catalog/repos/0xplaygrounds--rig.md

5.1 KiB
Raw Blame History

Rust LLM应用开发库

Rust LLM AI 向量数据库 Agent

目录

Rig 是什么?

Rig 是一个用于构建可扩展、模块化、符合人体工程学的 LLM 驱动应用程序的 Rust 库。

更多关于此 crate 的信息可以在官方文档crate 文档API 参考)中找到。

特性

  • 支持多轮流式传输和提示的智能体工作流
  • 完整的 GenAI 语义约定 兼容性
  • 20+ 模型提供商,统一在单一接口下
  • 10+ 向量存储集成,统一在单一接口下
  • 完整支持 LLM 补全和嵌入工作流
  • 支持转录、音频生成和图像生成模型能力
  • 以最少的样板代码将 LLM 集成到您的应用中
  • 完整的 WASM 兼容性(仅核心库)

谁在使用 Rig

以下是使用 Rig 的公司和个人的非完整列表:

您也在生产中使用 Rig提交 Issue 将您的名字添加进来!

快速开始

cargo add rig-core

简单示例

use rig::{client::CompletionClient, completion::Prompt, providers::openai};

#[tokio::main]
async fn main() {
    // 创建 OpenAI 客户端和模型
    // 需要设置 `OPENAI_API_KEY` 环境变量
    let openai_client = openai::Client::from_env();

    let gpt4 = openai_client.agent("gpt-4").build();

    // 提示模型并打印响应
    let response = gpt4
        .prompt("Who are you?")
        .await
        .expect("Failed to prompt GPT-4");

    println!("GPT-4: {response}");
}

注意:使用 #[tokio::main] 需要启用 tokio 的 macrosrt-multi-thread 特性,或直接使用 full 启用所有特性(cargo add tokio --features macros,rt-multi-thread)。

您可以在各 crate 的 examples 目录(如 rig-core/examples)中找到更多示例。更详细的使用案例会定期发布在我们的 Dev.to 博客,并添加到 Rig 官方文档 (docs.rig.rs)

支持的集成

向量存储以独立的伴生 crate 形式提供:

以下提供商以独立的伴生 crate 形式提供:

我们还有一些其他关联 crate提供使用 Rig 时可能有用的附加功能:

  • rig-onchain-kit —— Rig Onchain Kit,旨在使 Solana/EVM 与 Rig 之间的交互更易于实现。