temp: 暂存
This commit is contained in:
		
							
								
								
									
										31
									
								
								packages/ai-lang/src/agent/index.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								packages/ai-lang/src/agent/index.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,31 @@ | ||||
| import { createReactAgent } from '@langchain/langgraph/prebuilt'; | ||||
| import { MemorySaver } from '@langchain/langgraph'; | ||||
| import { ChatOllama } from '@langchain/ollama'; | ||||
| import { ChatOpenAI } from '@langchain/openai'; | ||||
| import { checkpointer } from '../module/save.ts'; | ||||
| import { HumanMessage } from '@langchain/core/messages'; | ||||
| export { HumanMessage }; | ||||
| // const agentModel = new ChatOllama({ temperature: 0, model: 'llama3.1:8b', baseUrl: 'http://mz.zxj.im:11434' }); | ||||
| export const agentModelBakllava = new ChatOllama({ temperature: 0, model: 'bakllava:latest', baseUrl: 'http://mz.zxj.im:11434' }); | ||||
| export const agentModel = new ChatOllama({ temperature: 0, model: 'qwen2.5:14b', baseUrl: 'http://mz.zxj.im:11434' }); | ||||
| export const agentModelOpenAI = new ChatOpenAI( | ||||
|   { temperature: 0, model: 'gpt-4o', apiKey: 'sk-GJE6I8OJWDr2ErFBD4C4706a65Ad4cD9B596Cf7c76943e45' }, | ||||
|   { | ||||
|     baseURL: 'https://oneapi.on-ai.ai/v1', | ||||
|   }, | ||||
| ); | ||||
|  | ||||
| const agentCheckpointer = checkpointer; | ||||
|  | ||||
| export const agent = createReactAgent({ | ||||
|   llm: agentModel, | ||||
|   tools: [], | ||||
|   checkpointSaver: agentCheckpointer, | ||||
| }); | ||||
| export const agentLlava = createReactAgent({ | ||||
|   llm: agentModelBakllava, | ||||
|   tools: [], | ||||
|   checkpointSaver: agentCheckpointer, | ||||
| }); | ||||
|  | ||||
| export const agentOpenAI = createReactAgent({ llm: agentModelOpenAI, tools: [], checkpointSaver: agentCheckpointer }); | ||||
							
								
								
									
										12
									
								
								packages/ai-lang/src/app.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								packages/ai-lang/src/app.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| import { App } from '@abearxiong/router'; | ||||
| import { useConfig } from '@abearxiong/use-config'; | ||||
|  | ||||
| const config = useConfig(); | ||||
| console.log('config in ai-lang', config); | ||||
|  | ||||
| export const app = new App({ | ||||
|   serverOptions: { | ||||
|     path: '/api/lang', | ||||
|   }, | ||||
| }); | ||||
|  | ||||
							
								
								
									
										1
									
								
								packages/ai-lang/src/index.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								packages/ai-lang/src/index.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| export * from './app.ts' | ||||
							
								
								
									
										4
									
								
								packages/ai-lang/src/module/mongo.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								packages/ai-lang/src/module/mongo.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| import { MongoClient } from 'mongodb'; | ||||
| import { useConfig } from '@abearxiong/use-config'; | ||||
| const { mongo } = useConfig<{ host: string; password: string; username: string }>(); | ||||
| export const client = new MongoClient(`mongodb://${mongo.username}:${mongo.password}@${mongo.host}`, {}); | ||||
							
								
								
									
										4
									
								
								packages/ai-lang/src/module/save.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								packages/ai-lang/src/module/save.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| import { MongoDBSaver } from '@langchain/langgraph-checkpoint-mongodb'; | ||||
| import { client } from './mongo.ts'; | ||||
|  | ||||
| export const checkpointer = new MongoDBSaver({ client }); | ||||
							
								
								
									
										10
									
								
								packages/ai-lang/src/routes/agent.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								packages/ai-lang/src/routes/agent.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| import { app } from '../app.ts'; | ||||
| import { agent, HumanMessage } from '../agent/index.ts'; | ||||
| app | ||||
|   .route('ai', 'chat') | ||||
|   .define(async (ctx) => { | ||||
|     const { message } = ctx.query; | ||||
|     const response = await agent.invoke({ messages: [new HumanMessage(message)] }, { configurable: { thread_id: '44' } }); | ||||
|     ctx.body = response; | ||||
|   }) | ||||
|   .addTo(app); | ||||
		Reference in New Issue
	
	Block a user