Real-Time Dataset Generator
收藏Tavily Real-Time Dataset Generator for RAG Evals 数据集概述
数据集简介
Tavily Real-Time Dataset Generator 是一个用于自动化生成数据集的工具,专门用于评估基于网络的AI代理。该工具通过生成特定领域的查询、收集实时网络数据并过滤结果,简化了基于LLM(大型语言模型)代理的评估过程。
主要功能
generate_qa_search_queries:根据主题和输入上下文生成目标搜索查询,确保后续检索过程专注于最相关的信息。search:利用Tavily Search API检索与生成查询相关的网页或文档,为生成有意义的问题-答案对提供必要的上下文。generate_qa:处理每个检索到的网页,生成问题-答案对。使用map-reduce范式从内容中提取关键见解,并为每个文档合成全面的QA项。save:确保生成的问题-答案对保存在Langsmith或本地(根据用户输入)。
输入参数
num_qa:指定要生成的问题-答案对数量。例如,设置为100将生成100个QA项。qa_subject:定义QA生成的主题焦点,如“体育”、“股票”或“新闻”,确保输出符合特定用户需求。save_to_langsmith:布尔参数,指示是否将数据集保存到Langsmith。
使用前提
- Tavily API Key:需要注册获取API密钥。
- OpenAI API Key:需要注册获取API密钥。
- Langsmith API Key:需要注册获取API密钥。
安装步骤
-
克隆仓库: bash git clone https://github.com/Eyalbenba/tavily-web-eval-generator.git cd tavily-web-eval-generator
-
创建虚拟环境: bash python -m venv venv
source venv/bin/activate # macOS/Linux
venvScriptsactivate # Windows -
设置API密钥: bash export TAVILY_API_KEY={Your Tavily API Key here}
export OPENAI_API_KEY={Your OpenAI API Key here}
export LANGSMITH_API_KEY={Your Langsmith API Key here} -
安装依赖: bash pip install -r requirements.txt
-
示例运行: bash import dotenv dotenv.load_dotenv() import asyncio from src.web_eval_generator.graph import graph from src.web_eval_generator.state import GeneratorState
async def main(): state = GeneratorState(num_qa=100,qa_subject="NBA Basketball") print("Starting the QA Generation workflow...") try: result = await graph.ainvoke(state) print(" Workflow completed successfully.") print("Final state:", result) except Exception as e: print(f"An error occurred during the workflow execution: {e}")
if name == "main": asyncio.run(main())
示例输出





