FastAPI DocGPT: система обработки PDF-документов и вопросов и ответов на основе FastAPI

Общее введение

FastAPI DocGPT - это система викторины по документам на основе FastAPI, которая позволяет пользователям загружать PDF-файлы и проводить викторину на основе содержания документа. Система использует технологию встраивания OpenAI для встраивания содержимого документов в векторную базу данных Qdrant, что позволяет создавать интеллектуальные вопросы и ответы. Пользователи могут загружать документы и задавать вопросы через интерфейс API, а система будет возвращать интеллектуальные ответы, основанные на содержании документа.

 

Список функций

  • PDF Загрузка: Пользователи могут загружать PDF-файлы, которые обрабатываются и сохраняются в базе данных векторов.
  • система вопросов и ответов: Пользователи могут задавать вопросы на основе загруженного содержимого PDF-файлов, и система будет возвращать интеллектуальные ответы.
  • Документация API: Предоставляет автоматически генерируемую документацию по API через Swagger для удобства разработчиков.
  • Совместное использование ресурсов между доменами: Поддерживает CORS, позволяя выполнять внешние запросы из разных доменов.

 

Использование помощи

Установка и настройка

  1. склад клонов
    git clone https://github.com/shaheryaryousaf/fastapi-docgpt
    cd fastapi-docgpt
    
  2. Настройка виртуальной среды
    python3 -m venv venv
    source venv/bin/activate  # Windows: venv\Scripts\activate
    
  3. Установка зависимостей
    pip install -r requirements.txt
    
  4. Настройка переменных среды В корневом каталоге проекта создайте файл .env файл и добавьте ключи API для OpenAI и Qdrant:
    OPENAI_API_KEY=your-openai-api-key
    QDRANT_URL=your-qdrant-url
    QDRANT_API_KEY=your-qdrant-api-key
    

Руководство по использованию

  1. Запуск приложения FastAPI
    uvicorn app:app --reload
    

    Это приведет к запуску приложения FastAPI с файлом http://127.0.0.1:8000 Предоставление услуг.

  2. Загрузка файлов PDF пройти (законопроект, проверку и т.д.) /upload-pdf/ Конечные точки загружают файлы PDF:
    curl -X POST "http://127.0.0.1:8000/upload-pdf/" -F "file=@yourfile.pdf"
    

    Система обрабатывает PDF-файл и вставляет его содержимое в базу данных векторов.

  3. разместить пройти (законопроект, проверку и т.д.) /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).
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...