Skip to content

parseny/openai-file-web-search

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Демо-приложение для поиска информации

Это демо-приложение позволяет загружать файлы и искать информацию по ним, а также в интернете, используя OpenAI Agents SDK.

Особенности

  • Управление векторными хранилищами: Создание, выбор и использование хранилищ OpenAI для файлов
  • Загрузка файлов: Загружайте файлы для анализа через удобный интерфейс
  • Интеграция с OpenAI Agents: Использует новую библиотеку openai-agents для оркестрации нескольких специализированных агентов
  • Поиск в интернете: Встроенный инструмент веб-поиска для получения актуальной информации
  • Поиск по файлам: Анализ загруженных файлов и поиск релевантной информации
  • Observability: Полная интеграция с инструментами наблюдаемости OpenAI
  • Чатовый интерфейс: Удобный интерфейс для взаимодействия с агентами

Установка

  1. Клонируйте репозиторий:
git clone https://github.com/yourname/OpenAI-File-Web-Search.git
cd OpenAI-File-Web-Search
  1. Создайте виртуальное окружение:
python -m venv .venv
  1. Активируйте виртуальное окружение:
  • Windows:
.\.venv\Scripts\activate
  • Linux/Mac:
source .venv/bin/activate
  1. Установите зависимости:
pip install -r requirements.txt
  1. Создайте файл .env и добавьте в него ваш API ключ OpenAI:
OPENAI_API_KEY=your_api_key_here
OPENAI_LOG_LEVEL=debug
AGENTS_ENABLE_TRACING=true

Запуск

  1. Убедитесь, что виртуальное окружение активировано
  2. Запустите приложение:
streamlit run app.py
  1. Откройте браузер и перейдите по адресу: http://localhost:8501

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

  1. Управление хранилищем:

    • В боковой панели выберите существующее хранилище или создайте новое
    • Нажмите "Использовать выбранное хранилище" или "Создать новое хранилище"
    • После выбора хранилища вы увидите список файлов в нем (если они есть)
  2. Загрузка файла (необязательно):

    • Выберите файл через интерфейс загрузки
    • Нажмите кнопку "Загрузить файл"
    • Если файл с таким именем уже существует, вы можете выбрать использовать существующий или загрузить новую версию
  3. Задавайте вопросы:

    • Используйте чатовый интерфейс для формулировки запросов
    • Система автоматически ищет в выбранном хранилище
    • Результаты из файлов дополняются актуальной информацией из интернета
    • Ответ форматируется в виде структурированного отчета с источниками

Архитектура

Приложение использует несколько специализированных агентов:

  1. QueryAnalyzer: Анализирует запросы пользователя и определяет необходимость уточнений
  2. FileSearcher: Специализируется на поиске информации в загруженных файлах
  3. WebSearcher: Выполняет поиск актуальной информации в интернете
  4. ReportGenerator: Формирует структурированный отчет на основе найденной информации

Инструменты наблюдаемости

В боковой панели доступна секция Observability, которая позволяет:

  • Включить/выключить отображение логов
  • Очистить логи
  • Перейти к логам на платформе OpenAI для более подробного анализа
  • Посмотреть информацию о текущем хранилище и загруженных файлах

Технические требования

  • Python 3.9 или выше
  • OpenAI API ключ с доступом к Assistants API и Vector Store API

Используемые библиотеки

  • openai-agents: для работы с агентами OpenAI
  • streamlit: для создания веб-интерфейса
  • python-dotenv: для работы с переменными окружения
  • openai: официальный клиент OpenAI API

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages