添加新的 API 提供者
本指南将引导您完成向 Llama Stack 添加新的 API 提供者的过程。
首先回顾 Llama Stack 的核心概念,然后选择您的提供者所属的 API(推理、安全性、VectorIO 等)。
将您的提供者添加到相应的注册中心。指定必要的 pip 依赖项。
更新任何分发版模板的
build.yaml
和run.yaml
文件,如果它们默认应包含您的提供者。如有必要,运行./scripts/distro_codegen.py。请注意,如果新提供者导致任何分发版模板尝试导入提供者特定的依赖项,则distro_codegen.py
将会失败。这通常意味着该分发版的get_distribution_template()
代码路径应仅从每个提供者导入任何必要的 Config 或模型别名定义,而不是提供者的实际实现。
以下是一些示例 PR,可帮助您入门
测试提供者
在运行测试之前,必须安装所需的依赖项。这取决于您正在测试的提供者或分发版。例如,如果您正在测试together
分发版,则应通过llama stack build --template together
安装依赖项。
1. 集成测试
集成测试位于tests/integration中。这些测试使用 Python 客户端 SDK API(来自llama_stack_client
包)来测试功能。由于这些测试使用客户端 API,因此可以通过指向 Llama Stack 服务器实例或使用LlamaStackAsLibraryClient
“内联”运行它们。
请查阅tests/integration/README.md以获取有关如何运行测试的更多详情。
请注意,每个提供者的sample_run_config()
方法(在该提供者的配置类中)通常会引用一些环境变量来指定 API 密钥等。您可以在环境中设置这些变量,或通过--env
标志将其传递给测试命令。
2. 单元测试
单元测试位于tests/unit中。提供者特定的单元测试位于tests/unit/providers中。所有这些测试都会作为 CI 过程的一部分自动运行。
请查阅tests/unit/README.md以获取有关如何手动运行测试的更多详情。
3. 额外的端到端测试
使用您的新提供者启动 Llama Stack 服务器
验证与llama-stack-apps仓库中现有客户端脚本的兼容性
记录哪些脚本与您的提供者兼容
提交您的 PR
确保所有测试通过
在您的 PR 摘要中包含一个全面的测试计划
记录任何已知限制或注意事项