2026-04-16
golang
00

目录

组件
基础知识 or 概念扫盲

这里eino 框架学习的相关总结,方便后续学习和记忆

组件

  • ChatModel‌:与大模型交互的核心组件,支持生成式对话(Generate)和流式输出(Stream),部分实现还支持工具调用(ToolCallingChatModel)
  • Tool‌:扩展大模型能力的工具,可调用外部 API、数据库、文件系统等,支持同步(Invoke)和流式(Stream)两种范式
  • Retriever‌:从向量库或文档库中检索与查询相关的文档片段,常用于 RAG 场景。
  • Embedding‌:将文本转换为向量表示,用于语义搜索和向量索引。
  • Indexer‌:负责存储和索引文档向量,支持 Redis、Milvus 等向量数据库。 ‌- Document Loader‌:加载并解析多种格式的原始文档(如 PDF、Markdown、TXT 等),统一为schema.Document 结构。
  • Document Transformer‌:对文档进行切分、过滤或格式转换,如按标题、递归或语义切分。
  • ChatTemplate‌:管理提示词模板,支持 FString、GoTemplate、Jinja2 等语法,便于动态构建系统提示

基础知识 or 概念扫盲

角色作用
system系统指令,设定 AI 的行为、角色、约束规则(如"你是专业助手")
user用户输入,代表人类的问题或指令
assistantAI 模型的回复内容
tool工具执行返回的结果(如查询天气后的返回数据)
  • 典型的对话流程
js
system: 你是一个天气助手,用中文回答 ↓ user: 北京今天天气怎么样? ↓ assistant: [思考中... 需要调用工具] → ToolCalls 触发 get_weather ↓ tool: {"temperature": "25°C", "condition": "晴"} ↓ assistant: 北京今天晴天,25°C,适合外出

本文作者:曹子昂

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!