Любопытство: создание похожего на Перплексити инструмента поиска ИИ с помощью LangGraph

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

Curiosity - это проект, предназначенный для исследований и экспериментов, в первую очередь с использованием LangGraph и стека технологий FastHTML, с целью создания ИИ недоумения поискового продукта. В основе проекта лежит простая ReAct Агент, используя Tavily Curiosity поддерживает различные большие языковые модели (LLM), включая gpt-4o-mini от OpenAI, llama3-groq-8b-8192-tool-use-preview от Groq и Оллама Проект фокусируется не только на технической реализации, но и уделяет много времени фронт-энд дизайну, чтобы обеспечить высокое качество визуального и интерактивного опыта.

Curiosity:使用LangGraph构建类似 Perplexity 的AI搜索工具

 

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

  • Использование LangGraph и технологического стека FastHTML
  • Интегрированный поиск по таврии Расширенная генерация текста
  • Поддержка нескольких LLM, включая gpt-4o-mini, llama3-groq и llama3.1
  • Обеспечивает гибкие возможности внутренней коммутации
  • Фронтенд построен на FastHTML и поддерживает потоковую передачу данных через WebSockets.

 

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

Этапы установки

  1. Хранилище клонирования:
    git clone https://github.com/jank/curiosity
    
  2. Убедитесь, что у вас установлена последняя версия интерпретатора Python3.
  3. Настройте виртуальную среду и установите зависимости:
    python3 -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
    
  4. создать .env файл и установите следующие переменные:
    OPENAI_API_KEY=<your_openai_api_key>
    GROQ_API_KEY=<your_groq_api_key>
    TAVILY_API_KEY=<your_tavily_api_key>
    LANGCHAIN_TRACING_V2=true
    LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"
    LANGSMITH_API_KEY=<your_langsmith_api_key>
    LANGCHAIN_PROJECT="Curiosity"
    
  5. Запустите проект:
    python curiosity.py
    

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

  1. Начало реализации проектов: Беги python curiosity.py После этого проект запустится и будет работать на локальном сервере.
  2. Выберите LLM: Выберите подходящий LLM (например, gpt-4o-mini, llama3-groq или llama3.1) в соответствии с вашими потребностями.
  3. Поиск с помощью Tavily: Введите запрос в диалог, и ReAct Agent улучшит генерацию текста с помощью поиска Tavily.
  4. Взаимодействие с внешним миром: Фронт-энд проекта построен с использованием FastHTML и поддерживает потоковую передачу WebSockets для обеспечения отклика в реальном времени.

общие проблемы

  • Как поменять LLM: в .env файл для настройки соответствующего ключа API и выбора нужного LLM при запуске проекта.
  • Проблемы WebSockets: Если у вас возникли проблемы с закрытием WebSockets без видимых причин, рекомендуется проверить сетевое подключение и конфигурацию сервера.
© заявление об авторских правах

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

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

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