AXIOM Neural Inference Service
Find a file
root 382b142625 feat: GGUF migration, OpenAI-compatible API, major core rewrite
- Switch from transformers+bitsandbytes to llama_cpp GGUF loading
- Model: Qwen3.5-9B.Q4_K_M.gguf (32K context)
- Add /v1/chat/completions OpenAI-compatible endpoint
- Add /v1/models endpoint
- XML tool call parsing in generator
- Session management with state persistence
- Vision temporarily disabled for performance
- Middleware: exempt OpenAI API paths from auth
2026-07-03 06:28:55 +12:00
.gitea/ISSUE_TEMPLATE chore: sync AGENTS.md and issue templates from axiom-ml-service 2026-06-23 21:15:00 +05:00
chroma_db feat: voice interface - STT (faster-whisper) + TTS (edge-tts) endpoints + Telegram voice support 2026-06-23 23:53:01 +05:00
data/states feat: GGUF migration, OpenAI-compatible API, major core rewrite 2026-07-03 06:28:55 +12:00
plugins fix: audit fixes - broken f-string in home_assistant plugin, sync code_assist methods, DB migration for old schema compatibility 2026-06-24 00:24:53 +05:00
src feat: GGUF migration, OpenAI-compatible API, major core rewrite 2026-07-03 06:28:55 +12:00
.env.template chore: add .gitignore, remove tracked secrets and models 2026-06-19 14:15:31 +05:00
.gitignore chore: add .gitignore, remove tracked secrets and models 2026-06-19 14:15:31 +05:00
AGENTS.md chore: sync AGENTS.md and issue templates from axiom-ml-service 2026-06-23 21:15:00 +05:00
benchmark.py feat: GGUF migration, OpenAI-compatible API, major core rewrite 2026-07-03 06:28:55 +12:00
fast_14b_persona.py chore: add .gitignore, remove tracked secrets and models 2026-06-19 14:15:31 +05:00
fast_14b_server.py chore: add .gitignore, remove tracked secrets and models 2026-06-19 14:15:31 +05:00
ml-service.service feat: voice interface - STT (faster-whisper) + TTS (edge-tts) endpoints + Telegram voice support 2026-06-23 23:53:01 +05:00
README.md chore: add .gitignore, remove tracked secrets and models 2026-06-19 14:15:31 +05:00
requirements.txt feat: multi-modal vision pipeline - moondream2 on CPU, analyze/ask/store endpoints, RAG integration 2026-06-24 00:04:51 +05:00
run_service.py chore: add .gitignore, remove tracked secrets and models 2026-06-19 14:15:31 +05:00

Net-AI ML Inference Service

Этот сервис отвечает за загрузку весов нейросети на графический ускоритель (NVIDIA GPU), ручной посимвольный инференс (custom decoding loop) и кастомное сэмплирование токенов (samplers.py).


Предварительные требования

  1. Python 3.11 / 3.13
  2. CUDA Toolkit (установленный на хосте для работы PyTorch с видеокартой).

Установка зависимостей

Для корректной работы PyTorch с ускорением на GPU NVIDIA (CUDA), рекомендуется сначала установить PyTorch с официального сайта:

# Для CUDA 12.1 (актуальная версия):
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121

Затем установите остальные зависимости из файла requirements.txt:

pip install -r requirements.txt

Запуск сервиса

  1. Убедитесь, что параметры в .env настроены правильно (DEVICE=cuda).
  2. Запустите сервер разработки:
    python -m uvicorn src.main:app --host 0.0.0.0 --port 8001 --reload
    
  3. При первом запуске сервис автоматически скачает веса модели (по умолчанию Qwen/Qwen2.5-Coder-1.5B-Instruct или указанной вами в .env модели openbmb/MiniCPM-V-1B) с Hugging Face Hub, сохранит их в локальный кэш и загрузит в видеопамять.

Доступные эндпоинты

  • POST /generate — Стриминг токенов (Server-Sent Events) с использованием нашего самописного сэмплера.
    • Тело запроса:
      {
        "messages": [{"role": "user", "content": "Привет, ИИ!"}],
        "temperature": 0.7,
        "top_k": 50,
        "top_p": 0.9,
        "max_tokens": 256
      }
      
  • GET /status — Информация о состоянии модели, активном ускорителе и количестве выделенной видеопамяти (VRAM) на GPU.