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

Список функций
- Использование LangGraph и технологического стека FastHTML
- Интегрированный поиск по таврии Расширенная генерация текста
- Поддержка нескольких LLM, включая gpt-4o-mini, llama3-groq и llama3.1
- Обеспечивает гибкие возможности внутренней коммутации
- Фронтенд построен на FastHTML и поддерживает потоковую передачу данных через WebSockets.
Использование помощи
Этапы установки
- Хранилище клонирования:
git clone https://github.com/jank/curiosity
- Убедитесь, что у вас установлена последняя версия интерпретатора Python3.
- Настройте виртуальную среду и установите зависимости:
python3 -m venv venv source venv/bin/activate pip install -r requirements.txt
- создать
.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"
- Запустите проект:
python curiosity.py
Руководство по использованию
- Начало реализации проектов: Беги
python curiosity.py
После этого проект запустится и будет работать на локальном сервере. - Выберите LLM: Выберите подходящий LLM (например, gpt-4o-mini, llama3-groq или llama3.1) в соответствии с вашими потребностями.
- Поиск с помощью Tavily: Введите запрос в диалог, и ReAct Agent улучшит генерацию текста с помощью поиска Tavily.
- Взаимодействие с внешним миром: Фронт-энд проекта построен с использованием FastHTML и поддерживает потоковую передачу WebSockets для обеспечения отклика в реальном времени.
общие проблемы
- Как поменять LLM: в
.env
файл для настройки соответствующего ключа API и выбора нужного LLM при запуске проекта. - Проблемы WebSockets: Если у вас возникли проблемы с закрытием WebSockets без видимых причин, рекомендуется проверить сетевое подключение и конфигурацию сервера.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...