#搜索引擎 #搜索查询 #rag #API密钥 #llm-search #web-browser

tavily

一个简单的工具,用于以最简单的方式调用塔维利的REST API!

5个版本 (1个稳定版)

1.0.0 2024年4月24日
0.2.2 2024年4月24日
0.2.1 2024年4月24日
0.2.0 2024年4月24日
0.1.0 2024年4月24日

#536 in 网页编程

MIT许可证

12KB
131

塔维利Rust SDK

塔维利Rust SDK是一个用于与塔维利搜索API交互的库。只需几行代码,您就可以执行简单或高级搜索查询,自定义搜索选项,并获取由LLM支持的搜索结果 🚀。

注意:需要API密钥

函数

塔维利Rust SDK提供三个主要函数

  • search:使用单个参数query执行简单搜索查询。
let response = tavily.search("your search query").await?;
  • answer:执行包含对查询答案的高级搜索查询。此函数比简单搜索花费的时间要多。
let response = tavily.answer("your search query").await?;
  • call:使用SearchRequest结构执行自定义搜索查询。此结构提供了一系列选项来定制搜索,包括搜索深度、是否包含图片或原始内容,以及包含或排除的域名。
let mut request = SearchRequest::new("your api key", "your search query");
request.search_depth("advanced");
request.include_answer(true);
request.include_images(true);
request.include_raw_content(true);
request.max_results(10);
request.include_domains(vec!["example.com".to_string()]);
request.exclude_domains(vec!["example.org".to_string()]);

let response = tavily.call(&request).await?;

入门

要开始使用塔维利Rust SDK,请将以下内容添加到您的Cargo.toml文件中

[dependencies]
tavily = "^1.0.0"

然后,在Rust代码中导入库

use tavily::{Tavily, SearchRequest, SearchResponse};

以下是使用库执行搜索查询的简单示例

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let api_key = "your_api_key";
    let query = "your_search_query";

    let tavily = Tavily::new(api_key);
    let response = tavily.search(query).await?;

    println!("{:#?}", response);

    Ok(())
}

您还可以通过使用SearchRequest结构来自定义搜索选项

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let api_key = "your_api_key";
    let query = "your_search_query";

    let mut request = SearchRequest::new(api_key, query);
    request.search_depth("advanced");
    request.include_answer(true);
    request.include_images(true);
    request.include_raw_content(true);
    request.max_results(10);
    request.include_domains(vec!["example.com".to_string()]);
    request.exclude_domains(vec!["example.org".to_string()]);

    let tavily = Tavily::new(api_key);
    let response = tavily.call(&request).await?;

    println!("{:#?}", response);

    Ok(())
}

错误代码

塔维利搜索API可能会返回各种HTTP状态代码。有关完整列表及其含义,请参阅官方文档

免责声明

这是塔维利搜索API的非官方SDK。有关官方文档和支持,请访问塔维利搜索API

许可证

MIT

依赖项

~4–15MB
~210K SLoC