Elcoder - это локальный ИИ-помощник по коду, созданный для помощи разработчикам в написании, анализе и отладке кода. Он использует мощь больших языковых моделей (по умолчанию DeepSeek-coder), запущенных локально с помощью Ollama, и предоставляет удобный веб-интерфейс на базе Gradio.
Возможности:
- Генерация кода: Написание функций, классов, скриптов по вашему описанию.
- Объяснение кода: Понимание сложных фрагментов кода.
- Поиск ошибок: Помощь в отладке и исправлении багов.
- Рефакторинг: Предложения по улучшению структуры и читаемости кода.
- Работа с файлами: Возможность загрузить файл и задавать вопросы по его содержимому.
- Память диалога: Elcoder помнит контекст текущей беседы.
- Локальная работа: Все вычисления происходят на вашем компьютере, обеспечивая приватность данных.
- Python 3.10+
- Ollama (ollama.com)
- Модель LLM для Ollama (например,
deepseek-coder) - Git (git-scm.com)
-
Клонируйте репозиторий:
- Откройте терминал и перейдите в каталог, где вы хотите разместить проект.
- Выполните команду (замените URL на актуальный):
# ЗАМЕНИТЕ URL НА АКТУАЛЬНЫЙ! git clone [https://github.com/your_username/elcoder_assistant.git](https://github.com/your_username/elcoder_assistant.git)
-
Перейдите в папку проекта:
cd elcoder_assistant -
Создайте виртуальное окружение:
- Находясь внутри папки проекта (
elcoder_assistant), выполните команду:python -m venv venv
- Эта команда создаст подпапку
venv, где будут храниться зависимости проекта.
- Находясь внутри папки проекта (
-
Активируйте виртуальное окружение:
- Windows (Command Prompt -
cmd.exe):.\venv\Scripts\activate.bat
- Windows (PowerShell):
(При ошибке выполнения скриптов может потребоваться:
.\venv\Scripts\Activate.ps1
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process) - macOS / Linux (bash, zsh):
source venv/bin/activate - Проверка: После активации вы должны увидеть
(venv)в начале строки вашего терминала.
- Windows (Command Prompt -
-
Установите зависимости:
- Убедитесь, что виртуальное окружение активно (
(venv)видно). - Выполните команду:
pip install -r requirements.txt
- Убедитесь, что виртуальное окружение активно (
-
Скачайте модель Ollama (если еще не скачана):
ollama pull deepseek-coder
(Вы можете использовать другую модель, изменив переменную
LLM_MODELвapp.py)
-
Убедитесь, что Ollama запущена:
- Запустите приложение Ollama или выполните
ollama serveв терминале.
- Запустите приложение Ollama или выполните
-
Запустите Elcoder:
- Перейдите в папку проекта (
elcoder_assistant). - Активируйте виртуальное окружение (если оно еще не активно):
source venv/bin/activateили.\venv\Scripts\activate. - Выполните:
python app.py
- Перейдите в папку проекта (
-
Откройте интерфейс:
- Перейдите по URL-адресу, указанному в терминале (обычно
http://127.0.0.1:7860).
- Перейдите по URL-адресу, указанному в терминале (обычно
- Введите ваш запрос (вопрос, описание кода, фрагмент кода) в текстовое поле.
- Нажмите "📁 Загрузить файл", чтобы предоставить Elcoder контекст из локального файла для вашего следующего запроса.
- Нажмите "🧹 Очистить диалог и память", чтобы начать новый сеанс.
- Для выхода из виртуального окружения используйте команду
deactivate.
Основные параметры можно изменить в файле app.py:
LLM_MODEL: Имя используемой модели Ollama.ConversationBufferWindowMemory(k=...): Размер памяти диалога.system_message: Системный промпт, определяющий поведение Elcoder.
- Ошибка
ModuleNotFoundError: No module named 'X': Активируйтеvenv, выполнитеpip install -r requirements.txt. - Ошибка
git: command not found: Установите Git. - Ошибка
repository not foundприgit clone: Проверьте URL и доступ к репозиторию. - Ошибка при инициализации Ollama /
Connection refused: Проверьте запуск Ollama и наличие модели (ollama list). - Медленные ответы / Ошибки генерации: Проверьте ресурсы системы, логи Ollama.
- Ошибка при чтении файла: Проверьте права доступа, кодировку (UTF-8).
(Добавьте информацию о лицензии, контактах и т.д., если необходимо)