У многих компаний есть NDA по запрету отправки кода в внешние LLM.
Почему?
1. Безопасность
За счет данных кодовой базы можно найти утечки и поломать приложение. Учитывая современные гибридные войны этот аспект очень важно учитывать.
2. Коммерческая тайна
Стратегические планы.
Сведения о партнёрах и контрактах.
Тендеры и переговоры.
Что угодно может повлиять на работе компании в дальнейшем.
Как крупные компании решают эту проблему ?
Крупные компании идут другим путём: запускают модели прямо на своих серверах. Qwen и Llama самые популярные варианты на текущий момент.
Пример:
from ollama import Client
client = Client(host='http://localhost:11434')
response = client.generate(
model='qwen:7b-code',
prompt="""Проанализируй код нашего микросервиса:
{SECRET_CODEBASE}
Найди уязвимости"""
)
Qwen наверное самый известный и на слуху. Одна из лучших open-source моделей для кода. Но есть подвох.
Кто пользовался говорят что модель «глуповата».
Все из-за того что локальная модель имеет небольшое контекстное окно.
Локальный Qwen видит только 32K токенов контекста.
Если ваш микросервис состоит из 20 файлов,
модель видит максимум 2-3 из них полностью.
Но это локальная модель поставленная на собественный компьютер. У больших компаний есть большие ресурсы. Они могут поставить мощную модель и потом "тюнить" ее под нужды.
Локальные модели будут глупее условного Клода. Но у крупных компаний есть большие ресурсы и они могут использовать fine tuning для улучшения качества кодинга.
Если есть данные на которых можно обучить ( десятки тысяч строк кода ), модель в крупной компании так и обучат.