项目介绍:WARC-GPT
WARC-GPT 是一种创新型的实验工具,它结合网络档案的强大功能和人工智能技术,通过一个称为“检索增强生成”的管道,用来探索和分析大规模的网络档案集合。这个工具旨在帮助人们更高效地从海量的网络档案中提取信息,并生成相应的资料解析。
项目特色
WARC-GPT 的设计充分考虑了用户的多样化需求,其主要功能包括:
- 支持对 WARC 文件的检索增强生成,这是互联网档案的一种常见格式。
- 提供高度可定制化的配置,支持与多种大型语言模型(LLM)、服务提供商及嵌入模型的互动。
- 提供 REST API 接口,方便程序化访问。
- 内置 Web 界面(Web UI)以便用户直观交互。
- 支持嵌入向量的可视化功能,方便分析。
安装指南
要使用 WARC-GPT,用户需要事先在计算机上安装以下软件:
- Python 3.11 以上版本
- Python Poetry
安装步骤如下:
git clone https://github.com/harvard-lil/warc-gpt.git
cd warc-gpt
poetry env use 3.11
poetry install
用户也可以选择不使用 Poetry,通过虚拟环境安装依赖:
git clone https://github.com/harvard-lil/warc-gpt.git
cd warc-gpt
python3 -m venv env
. env/bin/activate
pip install .
应用配置
WARC-GPT 通过环境变量进行配置。用户需要将 .env.example
文件复制为新的 .env
文件并根据需要进行修改。
cp .env.example .env
配置文件中包括对 OpenAI API 和 Ollama 本地推理服务的支持。至少需要配置其中一个支持服务,并可同时使用。
处理 WARC 文件
用户可以将需要探索的 WARC 文件放置在 ./warc
目录下,然后运行命令提取文本,生成嵌入,并将这些信息存储到知识库中:
poetry run flask ingest
启动服务器
使用以下命令可以启动 WARC-GPT 的服务器,默认端口为 5000:
poetry run flask run
与 Web UI 的交互
当服务器启动后,应用程序的 Web 界面可以通过 http://localhost:5000
访问。用户能够通过界面浏览和提问,后台会从知识库中检索相关信息来回答用户的问题。
使用 API 进行操作
WARC-GPT 提供多项 API 接口,允许开发者用编程方式与之交互。例如,通过 POST 请求 /api/search
,可以在已存储的向量数据中进行搜索并获取相关摘要。
嵌入可视化
WARC-GPT 提供了一种基本的交互式可视化功能,支持生成 T-SNE 2D 散点图以展示向量数据。用户可以通过执行以下命令来启用此功能:
poetry run flask visualize
免责声明
WARC-GPT 是哈佛大学法学院图书馆创新实验室(Library Innovation Lab)开发的一项实验项目,其开放源码并在 MIT 协议下发布,旨在激励用户反馈和持续改进。作为实验项目,其服务和性能暂达不到生产级平台的要求。实验室倡导安全和隐私的优先原则,同时也明确表示该项目可能会随时间转交其他团队负责、发生重大改变或完全终止。