如何将Langroid连接至Azure云端自行部署的LLM
如何将Langroid连接至Azure云端自行部署的LLM
我完全懂这种找不到对应文档的头疼——Langroid的官方文档确实把大部分篇幅放在了本地LLM的配置上,但其实它完全支持对接你这种在Azure上部署的Ollama模型,尤其是Mixtral这类开源模型,核心是利用Ollama提供的OpenAI兼容API来实现对接。下面我给你一步步拆解具体怎么做:
第一步:确保Azure上的Ollama实例开启OpenAI兼容接口
首先你需要在Azure的Ollama实例上,启动服务时开启OpenAI兼容模式的端点。登录到你的Azure虚拟机后,用这个命令启动Ollama:ollama serve --api-port 11434 --host 0.0.0.0这里的
--host 0.0.0.0是允许外部访问,--api-port指定的是默认的Ollama API端口。接下来一定要去Azure的**网络安全组(NSG)**配置里,添加入站规则,允许外部访问11434端口(或者你自定义的端口),不然Langroid所在的机器会连不上你的Azure实例。第二步:配置Langroid的ChatAgent指向云端端点
Langroid的ChatAgent可以通过OpenAIGPTConfig来对接任何兼容OpenAI API的模型,包括你在Azure上跑的Ollama。直接看代码示例更清楚:from langroid.agent.chat_agent import ChatAgent, ChatAgentConfig from langroid.language_models.openai_gpt import OpenAIGPTConfig # 配置LLM参数,替换成你的Azure实例信息 llm_config = OpenAIGPTConfig( model="mixtral", # 这里填你在Ollama上拉取的模型名,比如mixtral:8x7b-instruct-v0.1 api_base="http://<你的Azure实例公网IP>:11434/v1", # 必须加上/v1,对应OpenAI兼容端点的路径 api_key="", # 如果你的Ollama没开API认证,留空或者填任意字符串都行;开了的话填对应密钥 temperature=0.7, max_tokens=1024, ) # 创建ChatAgent的配置 agent_config = ChatAgentConfig( llm=llm_config, system_message="你是一个专业的助手,能够准确回答用户的各种问题", ) # 初始化Agent并测试连接 agent = ChatAgent(agent_config) response = agent.llm_response("你好,麻烦测试一下当前连接是否正常") print(response.content)需要注意的几个坑
- 一定要确认你的Azure实例公网IP是可访问的,可以先用curl测试:
curl http://<你的公网IP>:11434/v1/models,如果能返回模型列表,说明端点没问题 - 如果遇到连接超时,优先检查Azure的NSG规则和虚拟机的防火墙设置,确保11434端口是对外开放的
- 如果你在Ollama启动时改了端口,记得同步修改
api_base里的端口号
- 一定要确认你的Azure实例公网IP是可访问的,可以先用curl测试:
总结一下,Langroid本身并不区分模型是本地还是云端,只要模型能提供OpenAI兼容的API接口,就能通过OpenAIGPTConfig来配置对接。你这种在Azure上部署Ollama的场景完全是支持的,只是文档没专门拎出来讲而已。
内容来源于stack exchange
相关产品推荐
相关产品推荐

