OpenScholar 使用教程
1. 项目介绍
OpenScholar 是一个基于检索增强的语言模型(LM)的开源项目,旨在帮助科学家有效地浏览和综合科学文献。它通过首先在文献中搜索相关论文,然后基于这些来源生成响应,来回答用户的查询。
2. 项目快速启动
在开始之前,请确保您的环境中已安装以下依赖:
conda create -n os_env python=3.10.0
conda activate os_env
pip install -r requirements.txt
python -m spacy download en_core_web_sm
同时,您需要设置以下 API 密钥:
export S2_API_KEY=YOUR_S2_API_KEY
获取 API 密钥的指导请参考 Semantic Scholar API 页面。
接下来,运行 OpenScholar � inferencing 的基本命令如下:
python run.py \
--input_file YOUR_INPUT_FILE \
--model_name OpenScholar/Llama-3.1_OpenScholar-8B \
--use_contexts \
--output_file OUTPUT_FILE_PATH \
--top_n 10 --llama3 --zero_shot
请将 YOUR_INPUT_FILE
替换为您的输入文件路径,OUTPUT_FILE_PATH
替换为输出文件路径。
3. 应用案例和最佳实践
- 标准 RAG 管道:使用 top 10 的结果。
python run.py \
--input_file YOUR_INPUT_FILE \
--model_name OpenScholar/Llama-3.1_OpenScholar-8B \
--use_contexts \
--output_file OUTPUT_FILE_PATH \
--top_n 10 --llama3 --zero_shot
- Retriever+ Reranker 管道:使用重排模型来重排 top_n 段落。
python run.py \
--input_file YOUR_INPUT_FILE \
--model_name OpenScholar/Llama-3.1_OpenScholar-8B \
--use_contexts \
--ranking_ce \
--reranker OpenScholar/OpenScholar_Reranker \
--output_file OUTPUT_FILE_PATH \
--top_n 10 --llama3 --zero_shot
- Open Retriever 自省生成管道:使用自反馈循环。
python run.py \
--input_file YOUR_INPUT_FILE \
--model_name OpenScholar/Llama-3.1_OpenScholar-8B \
--use_contexts \
--output_file OUTPUT_FILE_NAME \
--top_n 10 --llama3 --use_contexts \
--ranking_ce --reranker OpenScholar/OpenScholar_Reranker \
--posthoc --feedack --ss_retriever \
--use_abstract --norm_cite --zero_shot --max_per_paper 3
- 使用专有 LLM:结合专有大型语言模型。
python run.py \
--input_file YOUR_INPUT_FILE \
--model_name "gpt-4o" \
--api "openai" \
--api_key_fp PATH_TO_YOUR_OPEN_AI_KEY \
--use_contexts \
--output_file OUTPUT_FILE_PATH \
--top_n 10 --llama3 --zero_shot
4. 典型生态项目
OpenScholar 的生态系统包括多个相关项目,例如:
- ScholarQABench:用于在 ScholarQABench 上运行评估的仓库。
- OpenScholar_ExpertEval:用于专家评估界面和结果的仓库。
这些项目共同构成了 OpenScholar 的强大生态,为科学文献的综合提供了全面的工具和资源。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考