快速开始:首个 LLM 调用
安装
langchaingo 采用模块化设计,核心包之外按需引入具体 provider(如 llms/openai)。
配置模型
langchaingo 的 openai 包兼容一切 OpenAI 协议的服务(OpenAI 官方、Azure、DeepSeek、通义千问、Ollama 等):
Tip
密钥管理:openai.New() 无参调用时默认读取 OPENAI_API_KEY 环境变量。生产服务应通过环境变量或密钥管理系统注入,切勿将 Key 写入代码或提交到仓库。
首个补全
多轮消息对话
GenerateContent 接收结构化消息列表,支持 system / human / AI 角色:
流式输出
流式(streaming)让响应逐段到达,是交互式应用的标准体验。通过 WithStreamingFunc 接收增量内容:
与 Go 服务集成
将 LLM 调用封装为 HTTP 接口,并施加超时控制:
Warning
LLM 响应延迟通常在秒级,远高于普通 RPC。务必为每次调用设置 context 超时;面向终端用户的接口建议使用流式转发,避免网关或客户端超时中断。
小结
openai.New()统一接入 OpenAI 兼容服务;GenerateFromSinglePrompt与GenerateContent分别对应单轮补全与多轮对话。WithStreamingFunc实现流式输出。- 模型调用必须包裹超时 context,并结合 goroutine 做并发编排。