首页
/ Ollama-Python项目中自定义Embeddings服务地址的配置方法

Ollama-Python项目中自定义Embeddings服务地址的配置方法

2025-05-30 02:12:46作者:尤辰城Agatha

在使用ollama-python库进行文本嵌入(embeddings)操作时,开发者可能会遇到需要指定自定义服务地址的情况。本文详细介绍两种配置base_url的有效方法,帮助开发者灵活连接不同环境的OLLAMA服务。

方法一:创建自定义客户端实例

推荐在生产环境中使用这种方式,它提供了更清晰的配置管理和更好的代码组织:

from ollama import Client

# 创建自定义客户端实例
custom_client = Client(base_url="http://your-server-ip:11434")

# 使用自定义客户端执行embeddings操作
embedding_result = custom_client.embeddings(
    model="nomic-embed-text",
    prompt="您的文本内容"
)

这种方法的主要优势在于:

  1. 配置与调用分离,代码结构更清晰
  2. 同一应用中可创建多个不同配置的客户端实例
  3. 便于进行单元测试和模拟

方法二:通过环境变量配置

对于快速原型开发或简单脚本,可以使用环境变量全局配置:

# 在终端中设置环境变量
export OLLAMA_HOST=your-server-ip

然后在Python代码中直接使用模块级客户端:

import ollama

# 直接使用模块级客户端,自动读取环境变量配置
result = ollama.embeddings(
    model="nomic-embed-text",
    prompt="您的文本内容"
)

环境变量方式的优点:

  1. 配置与代码完全解耦
  2. 便于在不同部署环境间切换
  3. 避免在代码中硬编码敏感信息

技术原理说明

ollama-python库的设计采用了两种客户端模式:

  • 模块级客户端:提供开箱即用的简单接口,默认读取环境变量配置
  • 实例化客户端:支持更灵活的配置,适合复杂应用场景

当base_url未显式指定时,库会按照以下顺序解析服务地址:

  1. 检查Client实例的base_url参数
  2. 查找OLLAMA_HOST环境变量
  3. 回退到默认的localhost:11434

最佳实践建议

  1. 开发环境建议使用环境变量方式,便于团队成员共享配置
  2. 生产环境推荐使用实例化客户端,配合配置管理系统
  3. 对于容器化部署,两种方式都可以,但要注意环境变量的传递机制
  4. 测试环境下可以结合mock客户端进行隔离测试

通过合理选择配置方式,可以确保ollama-python应用在不同环境下都能正确连接到指定的嵌入服务端点。

登录后查看全文
热门项目推荐
相关项目推荐