Подготовка к запуску¶
Подготовка к запуску: получение обязательных данных, создание папок, создание файлов и установка зависимостей.
Обязательные учетные данные¶
1. Google Custom Search Credentials (optional)¶
Интеграция в проект в планах, но функционал уже реализован. Для работы поиска нам понадобится CSE id
и Google Search API Key
. Инструкция по получению. При создании API ключа стоит учитывать, что вы можете указать домены, по которым будет происходить поиск. Создать поисковый сервис в Google тут.
2. MistralAI API key¶
Теперь, главная составляющая проекта - ИИ. Получить API ключ можно на официальном сайте Mistral.
3. Secret key¶
SECRET_KEY
- переменная для корректной работы wtforms
. Лучше всего для ключа подойдет uuid4
. Сгенерировать можно или через python библиотеку uuid
, или на сайте.
P.S. В документации Flask рекомендуется использовать рандомный набор байтов. Ниже пример:
python -c 'import secrets; print(secrets.token_hex())'
> 192b9bdd22ab9ed4d12e236c78afcb9a393ec15f71bbf5dc987d54727823bcbf
Beta-функционал¶
На данный момент к β-функционалу относится использование локальных моделей Ollama
. Для их использования необходимо установить Ollama
способом, подходящим Вашей системе. Также стоит прочитать про настройки конфига для beta и ollama .
Обязательные действия в проекте¶
Создаем директорию database
в корне¶
Для корректной работы создаем в корне проекта директорию database
любым удобным Вам способом. Вот пример через командную строку:
mkdir database
Создаем файл .env
¶
Создаем файл .env
со следующим содержанием:
MISTRAL_AI_API_KEY=mistral-ai-api-key
GOOGLE_API_KEY=google-api-key
CSE_ID=cse-id
SECRET_KEY=secret-key
Данные заменяем на свои. Подробное описание содержания файла находиться в блоке "Переменные .env"
Установка зависимостей¶
С помощью pip¶
1. Создаем виртуальное окружение python¶
# Windows
python -m venv venv
# Linux/MacOS
python3 -m venv venv
2. Активируем виртуальное окружение¶
# Windows
venv/Scripts/activate
# Linux/MacOS
source venv/bin/activate
3. Устанавливаем зависимости проекта¶
# Windows
pip install -r ./requirements.txt
# Linux/MacOS
pip3 install -r ./requirements.txt
С помощью uv¶
Подтягиваем зависимости¶
uv sync # .venv создается автоматически
uv под капотом создал виртуальное окружение и установил все зависимости.