工具概览
llm-go 是一个与提供商无关的 Go 库,支持模型生成、流式输出、工具使用、多模态消息、推理和用量统计。它把提供商 SDK 的类型隐藏在一个小型通用 API 之后,使应用无需更改对话模型即可切换协议。该库需要 Go 1.27 或更新版本,其公共 API 仍在积极开发中。
它将传输协议适配器与模型和提供商元数据分离。每个适配器都支持生成、带类型的流事件、分类的错误和 token 用量。内置协议包括 OpenAI Responses、Azure OpenAI Responses、兼容 OpenAI 的 Chat Completions、ChatGPT 订阅版 Codex Responses、兼容 Anthropic 的 Messages、Gemini Developer API、Google Vertex AI、Amazon Bedrock ConverseStream 和 Mistral Conversations。模型级的功能仍须由所配置的模型声明。
可移植的编排辅助功能是可选的,不会改变提供商的默认设置,包括有界重试、流收集、结构化收集、工具严格性、历史转换、token 预算、工具参数校验、上下文溢出检测和 JSON 修复辅助。工具输入默认使用 JSON Schema 2020-12,并支持已声明的草案版本和离线的本地引用。
通过不可变的工厂注册表,以及发布静态基线并叠加经过校验的提供商覆盖层的目录管理器,支持自定义协议和动态目录。内置的提供商配置为 OpenRouter、Groq、DeepSeek、xAI、Cerebras、Fireworks、Mistral、Google Vertex 和 Amazon Bedrock 等服务提供协议和端点默认值。暴露兼容 OpenAI 的 /v1/chat/completions 端点的本地服务器使用 openai 适配器。
定价
价格与限制可能变化,请以官网为准,并确认币种、付款周期、最低席位数和用量上限。
应用场景
- 团队用 llm-go 在模型提供商之间切换,而无需更改对话模型。
- 团队用 llm-go 进行同步生成,以及带类型事件、生命周期安全的流式输出。
- 团队用 llm-go 处理多轮推理回放、提示词缓存以及用量/成本统计。
- 团队用 llm-go 通过 JSON Schema 对模型生成的工具参数进行转换和校验。
- 团队用 llm-go 修复格式错误的 JSON,并读取部分的流式 JSON。
- 团队用 llm-go 连接 Ollama 和 llama.cpp 等本地兼容 OpenAI 的服务器。
- 团队用 llm-go 从 models.dev 动态获取模型。
功能特性
不绑定特定服务商的 Go 库
支持大模型生成与流式输出
支持模型调用工具
处理多模态输入
支持推理过程回放
提供用量与价格信息
用户评论
还没有评论,来分享你的使用体验吧