Ollama Python 和 JavaScript 库发布

Ollama 发布了官方 Python 和 JavaScript 库,允许开发者通过几行代码将 LLM 能力集成到其应用程序中。这些库提供了一个程序化接口,镜像了 Ollama REST API 的功能和特性。

Python 和 JavaScript 的官方库支持

Ollama 现在通过 GitHub 提供专门的 Python 和 JavaScript 库。这些库旨在为使用这些语言的开发者提供无缝的集成过程。

核心能力与实现

Python 和 JavaScript 库都支持 Ollama 的全套功能,包括聊天、文本补全和多模态输入。

聊天与基础集成

开发者可以使用 ollama.chat 方法实现一个基础的聊天界面。在 Python 中,这可以通过 pip install ollama 实现,并调用 chat 函数,指定一个模型(例如 llama2)和消息数组。

在 JavaScript 中,安装方式为 npm install ollama,并使用 await ollama.chat 配合模型和消息配置。

高级用例

这些库支持多种高级 LLM 工作流:

  • Streaming(流式传输): Python 库允许使用 stream=True 进行实时响应生成,从而使输出能够以分块形式打印。
  • Multi-modal Inputs(多模态输入): 使用像 llava 这样的模型,开发者可以在消息数组中传递图像数据(以二进制形式读取)来进行图像分析。
  • Text Completion(文本补全): ollama.generate 方法支持基于提示词的文本补全,这对于使用 stable-code 等模型进行代码生成等任务非常有用。
  • Custom Model Creation(自定义模型创建): 开发者可以使用 ollama.create 通过定义 modelfile(例如指定一个基础模型如 llama2 并设置系统提示词)来程序化地创建新模型。
  • Custom Clients(自定义客户端): Client 类允许开发者为 Ollama 服务器指定自定义主机,从而实现通过 host='my.ollama.host' 进行远程连接。

生态系统与社区贡献

Ollama 已将其主仓库及这些新库迁移到了一个新的 GitHub 组织:ollama

虽然现在已经有了 Python 和 JavaScript 的官方支持,但社区已经为其他语言开发了库,包括 Dart、Swift、C#、Java、PHP 和 Rust。Ollama 鼓励社区成员为这些库做出贡献,或提交 pull requests 以添加新的库。

Sources

相关

  • 项目
  • Dispatch
  • Dispatch
  • Dispatch
  • 项目