- Augmented LLM (Chat + MCP + RAG)
- 不依赖框架
- LangChain, LlamaIndex, CrewAI, AutoGen
- MCP
- 支持配置多个MCP Serves
- RAG 极度简化板
- 从知识中检索出有关信息,注入到上下文
- 任务
- 阅读网页 → 整理一份总结 → 保存到文件
- 本地文档 → 查询相关资料 → 注入上下文
classDiagram
class Agent {
+init()
+close()
+invoke(prompt: string)
-mcpClients: MCPClient[]
-llm: ChatOpenAI
-model: string
-systemPrompt: string
-context: string
}
class ChatOpenAI {
+chat(prompt?: string)
+appendToolResult(toolCallId: string, toolOutput: string)
-llm: OpenAI
-model: string
-messages: OpenAI.Chat.ChatCompletionMessageParam[]
-tools: Tool[]
}
class EmbeddingRetriever {
+embedDocument(document: string)
+embedQuery(query: string)
+retrieve(query: string, topK: number)
-embeddingModel: string
-vectorStore: VectorStore
}
class MCPClient {
+init()
+close()
+getTools()
+callTool(name: string, params: Record<string, any>)
-mcp: Client
-command: string
-args: string[]
-transport: StdioClientTransport
-tools: Tool[]
}
class VectorStore {
+addEmbedding(embedding: number[], document: string)
+search(queryEmbedding: number[], topK: number)
-vectorStore: VectorStoreItem[]
}
class VectorStoreItem {
-embedding: number[]
-document: string
}
Agent --> MCPClient : uses
Agent --> ChatOpenAI : interacts with
ChatOpenAI --> ToolCall : manages
EmbeddingRetriever --> VectorStore : uses
VectorStore --> VectorStoreItem : contains
git clone [email protected]:KelvinQiu802/ts-node-esm-template.git
pnpm install
pnpm add dotenv openai @modelcontextprotocol/sdk chalk**
- Retrieval Augmented Generation
- 各种Loaders: https://python.langchain.com/docs/integrations/document_loaders/
- 硅基流动
- 邀请码: x771DtAF
- json数据
- 维度
- 模长
- 点乘 Dot Product
- 对应位置元素的积,求和
- 余弦相似度 cos
- 1 → 方向完全一致
- 0 → 垂直
- -1 → 完全想法