零冲突开发:3步修改LangGraph API默认监听地址全指南

零冲突开发:3步修改LangGraph API默认监听地址全指南

【免费下载链接】ollama-deep-researcher Fully local web research and report writing assistant 【免费下载链接】ollama-deep-researcher 项目地址: https://gitcode.com/GitHub_Trending/ol/ollama-deep-researcher

你还在为本地开发时API端口冲突烦恼吗?启动项目时频繁遇到"Address already in use"错误?本文将通过修改ollama-deep-researcher项目中的API默认监听地址,彻底解决这一开发痛点。读完本文你将获得:

  • 精准定位配置文件的能力
  • 3种修改监听地址的实操方案
  • 冲突排查与验证的完整流程

配置文件定位:找到API地址的源头

API服务的监听地址通常在项目配置文件中定义。通过分析src/ollama_deep_researcher/configuration.py源码,我们发现两个关键配置项:

42:     ollama_base_url: str = Field(
43:         default="http://localhost:11434/",
44:         title="Ollama Base URL",
45:         description="Base URL for Ollama API",
46:     )
47:     lmstudio_base_url: str = Field(
48:         default="http://localhost:1234/v1",
49:         title="LMStudio Base URL",
50:         description="Base URL for LMStudio OpenAI-compatible API",
51:     )

这两个参数分别控制Ollama和LMStudio的API监听地址,默认使用localhost和固定端口(11434/1234),这是导致端口冲突的常见原因。

方法一:直接修改源码配置(快速测试)

适合临时测试的最快修改方式,直接编辑配置文件:

  1. 打开配置文件:

    vim src/ollama_deep_researcher/configuration.py
    
  2. 修改默认值: 将第43行和第48行的默认值修改为可用的地址和端口,例如:

    default="http://0.0.0.0:11435/",  # 更改Ollama端口为11435
    default="http://0.0.0.0:1235/v1", # 更改LMStudio端口为1235
    
  3. 重启服务使修改生效

注意:此方法会改变项目默认配置,提交代码前建议恢复默认值

方法二:使用环境变量(开发推荐)

更优雅的方式是通过环境变量覆盖默认配置,不修改源码即可临时变更地址:

  1. 创建.env文件(如果不存在):

    touch .env
    
  2. 添加环境变量配置:

    OLLAMA_BASE_URL=http://localhost:11435/
    LMSTUDIO_BASE_URL=http://localhost:1235/v1
    
  3. 通过环境变量启动项目:

    export $(cat .env | xargs) && python -m src.ollama_deep_researcher
    

这种方式符合langgraph.json中定义的环境配置规范,第7行明确指定了环境变量文件路径:

7:     "env": "./.env",

方法三:运行时动态配置(生产适用)

在生产环境或需要动态调整时,可通过RunnableConfig在运行时注入配置:

from ollama_deep_researcher.configuration import Configuration
from langchain_core.runnables import RunnableConfig

config = RunnableConfig(
    configurable={
        "ollama_base_url": "http://localhost:11435/",
        "lmstudio_base_url": "http://localhost:1235/v1"
    }
)

# 应用配置
configurable = Configuration.from_runnable_config(config)

这种方式在src/ollama_deep_researcher/graph.py的第159行有实际应用:

159:     configurable = Configuration.from_runnable_config(config)

修改验证与冲突排查

修改完成后,通过以下步骤验证是否生效:

  1. 启动项目观察控制台输出,确认服务监听新地址
  2. 使用curl测试API连通性:
    curl http://localhost:11435/api/tags  # 测试Ollama API
    
  3. 若仍有冲突,使用工具查找占用端口的进程:
    # 查找端口占用情况
    lsof -i :11434
    # 终止占用进程
    kill -9 <PID>
    

最佳实践与注意事项

  • 开发环境:优先使用环境变量方法,避免修改源码
  • 团队协作:将常用端口配置添加到docs/new_features_0.0.1.md文档
  • 端口选择:建议使用1024以上且未被IANA分配的端口(49152-65535)
  • 多实例部署:可通过不同端口启动多个服务实例,实现并行开发测试

通过本文介绍的三种方法,你可以根据不同场景灵活修改API监听地址,彻底告别端口冲突问题。掌握这些技巧将显著提升你的LangGraph项目开发效率。收藏本文以备不时之需,关注获取更多开发实战技巧!

【免费下载链接】ollama-deep-researcher Fully local web research and report writing assistant 【免费下载链接】ollama-deep-researcher 项目地址: https://gitcode.com/GitHub_Trending/ol/ollama-deep-researcher

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值