FastAPI DocGPT: система обработки PDF-документов и вопросов и ответов на основе FastAPI
Общее введение
FastAPI DocGPT - это система викторины по документам на основе FastAPI, которая позволяет пользователям загружать PDF-файлы и проводить викторину на основе содержания документа. Система использует технологию встраивания OpenAI для встраивания содержимого документов в векторную базу данных Qdrant, что позволяет создавать интеллектуальные вопросы и ответы. Пользователи могут загружать документы и задавать вопросы через интерфейс API, а система будет возвращать интеллектуальные ответы, основанные на содержании документа.
Список функций
- PDF Загрузка: Пользователи могут загружать PDF-файлы, которые обрабатываются и сохраняются в базе данных векторов.
- система вопросов и ответов: Пользователи могут задавать вопросы на основе загруженного содержимого PDF-файлов, и система будет возвращать интеллектуальные ответы.
- Документация API: Предоставляет автоматически генерируемую документацию по API через Swagger для удобства разработчиков.
- Совместное использование ресурсов между доменами: Поддерживает CORS, позволяя выполнять внешние запросы из разных доменов.
Использование помощи
Установка и настройка
- склад клонов
git clone https://github.com/shaheryaryousaf/fastapi-docgpt cd fastapi-docgpt
- Настройка виртуальной среды
python3 -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate
- Установка зависимостей
pip install -r requirements.txt
- Настройка переменных среды В корневом каталоге проекта создайте файл
.env
файл и добавьте ключи API для OpenAI и Qdrant:OPENAI_API_KEY=your-openai-api-key QDRANT_URL=your-qdrant-url QDRANT_API_KEY=your-qdrant-api-key
Руководство по использованию
- Запуск приложения FastAPI
uvicorn app:app --reload
Это приведет к запуску приложения FastAPI с файлом
http://127.0.0.1:8000
Предоставление услуг. - Загрузка файлов PDF пройти (законопроект, проверку и т.д.)
/upload-pdf/
Конечные точки загружают файлы PDF:curl -X POST "http://127.0.0.1:8000/upload-pdf/" -F "file=@yourfile.pdf"
Система обрабатывает PDF-файл и вставляет его содержимое в базу данных векторов.
- разместить пройти (законопроект, проверку и т.д.)
/ask-question/
Конечные точки вызывают вопросы:curl -X POST "http://127.0.0.1:8000/ask-question/" -H "Content-Type: application/json" -d '{"question": "你的问题"}'
Система возвращает интеллектуальные ответы, основанные на содержании документа.
Структура проекта
app.py
: Основной файл приложения FastAPI, содержащий конечные точки API для загрузки PDF и системы вопросов и ответов.utils.py
: Содержит утилиты для обработки PDF-файлов, отправки вкраплений в векторные базы данных и извлечения ответов из вкраплений..env
Файл: Управление ключами API для OpenAI и Qdrant.
Библиотека зависимостей (вычислительная техника)
- FastAPI: Используется для создания веб-интерфейсов API.
- Клиент Qdrant: Используется для хранения и извлечения вложений документов.
- LangChain: Для обработки PDF и встраивания.
- OpenAI: для генерации откликов на модели встраивания и ИИ.
- PyPDFLoader: Используется для извлечения текста из файлов PDF.
- CORS Middleware: Управляет кросс-доменным обменом ресурсами (CORS), позволяя выполнять внешние запросы из разных доменов.
- dotenv: Управление переменными окружения (например, ключами API).
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...