如何将LlamaIndex默认GPT基础API切换至内部代理GPT服务?
解决LlamaIndex.TS代理地址不生效的问题
- 确保环境变量设置在模块导入前
LlamaIndex.TS会在模块加载时读取环境变量,必须在导入任何LlamaIndex相关模块之前设置OPENAI_API_BASE,否则配置不会生效。示例代码:
// 优先设置环境变量 process.env['OPENAI_API_BASE'] = 'http://openaiproxy.service.consul:8080/OpenAIProxy/handler'; // 再导入模块 import { OpenAI } from 'llamaindex'; // 初始化模型 const model = new OpenAI({ model: "gpt-3.5-turbo" });
- 显式在模型实例中指定baseURL
如果环境变量方式失效,直接在创建OpenAI实例时传入baseURL参数,强制覆盖默认地址:
import { OpenAI } from 'llamaindex'; const model = new OpenAI({ model: "gpt-3.5-turbo", baseURL: 'http://openaiproxy.service.consul:8080/OpenAIProxy/handler' });
- 验证代理地址的可用性
用curl或其他工具测试代理地址是否能正常转发请求,确认路径和权限没问题:
curl -X POST http://openaiproxy.service.consul:8080/OpenAIProxy/handler/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{"model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Hello"}]}'
- 升级LlamaIndex.TS到最新版本
旧版本可能存在环境变量读取的bug,执行以下命令升级:
npm install llamaindex@latest
- 确认环境变量名正确性
检查LlamaIndex.TS的配置文档(本地查看或模块源码),确认是否使用OPENAI_API_BASE作为基础地址的环境变量名,避免因变量名错误导致配置失效。
内容的提问来源于stack exchange,提问作者daniel gi
相关产品推荐
相关产品推荐

