Взаимодействие с моделями: практическое руководство¶
В этом разделе мы разберем, как практически работать с ИИ-моделями: через чат, через API, и как настраивать их поведение для юридических задач.
Общение через чат¶
Веб-интерфейсы¶
Самый простой способ начать работу — использовать веб-интерфейсы провайдеров:
- ChatGPT: chat.openai.com
- Claude: claude.ai
- Gemini: gemini.google.com
Как работает:
1. Регистрируетесь на платформе
2. Открываете чат
3. Задаете вопросы или загружаете документы
4. Получаете ответы
Преимущества:
- Не требует технических знаний
- Быстрый старт
- Удобный интерфейс
Ограничения:
- Сложно автоматизировать
- Ограниченные возможности настройки
- Данные уходят в облако
Локальные чаты¶
Для открытых моделей можно использовать локальные интерфейсы:
- Ollama Web UI: Веб-интерфейс для Ollama
- LM Studio: Графический интерфейс
- Text Generation WebUI: Универсальный интерфейс
Преимущества:
- Данные остаются локально
- Полный контроль
- Бесплатно
Доступ через API¶
API (Application Programming Interface) — это способ программно взаимодействовать с моделью. Ваше приложение отправляет запросы и получает ответы.
Как это работает?¶
graph LR
A[Ваше приложение] -->|Запрос| B[API модели]
B -->|Ответ| A
style A fill:#e1f5ff
style B fill:#c8e6c9 Аналогия: API — как телефонный звонок. Вы звоните (отправляете запрос), говорите что нужно (промпт), получаете ответ.
Структура API-запроса¶
Типичный запрос к модели состоит из:
- Системный промпт — инструкции модели, как себя вести
- История диалога — предыдущие сообщения
- Текущий запрос — что вы хотите сейчас
Пример структуры:
{
"model": "gpt-4",
"messages": [
{
"role": "system",
"content": "Ты опытный юрист, специализирующийся на договорном праве..."
},
{
"role": "user",
"content": "Проанализируй этот договор и найди риски..."
}
],
"temperature": 0.2,
"max_tokens": 2000
}
Системный промпт: настройка "стиля поведения"¶
Системный промпт — это инструкции модели о том, как она должна себя вести. Это как "должностная инструкция" для ИИ.
Примеры системных промптов:
Для анализа договоров:¶
Ты опытный юрист, специализирующийся на договорном праве.
Твоя задача — анализировать договоры и находить потенциальные риски.
При анализе обращай внимание на:
- Неясные формулировки
- Отсутствие важных условий
- Несбалансированные условия
- Соответствие законодательству
Всегда указывай конкретные пункты договора и объясняй, почему это риск.
Для генерации документов:¶
Ты помощник юриста, который готовит проекты документов.
Твои принципы:
- Используй точную юридическую терминологию
- Следуй структуре типовых документов
- Включай все необходимые разделы
- Указывай места для заполнения переменных
Всегда начинай документ с преамбулы и заканчивай реквизитами сторон.
Для работы с судебной практикой:¶
Ты юрист, который анализирует судебную практику.
При работе с прецедентами:
- Указывай точные реквизиты решения (номер, дата, суд)
- Выделяй ключевые правовые позиции
- Объясняй применимость к конкретному случаю
- Указывай ограничения и исключения
Всегда проверяй актуальность практики.
Параметры работы модели¶
Температура (Temperature)¶
Что делает: Контролирует случайность/креативность ответов.
Диапазон: 0.0 - 2.0 (обычно 0.0 - 1.0)
Для юридических задач:
| Задача | Рекомендуемая температура | Почему |
|---|---|---|
| Анализ договоров | 0.1 - 0.3 | Нужна точность, соответствие стандартам |
| Генерация документов | 0.2 - 0.4 | Баланс между стандартностью и адаптацией |
| Поиск решений | 0.1 - 0.2 | Точность важнее креативности |
| Мозговой штурм | 0.6 - 0.8 | Нужны разные варианты |
Примеры:
# Высокая точность для анализа
temperature = 0.2
# Средняя для генерации
temperature = 0.4
# Высокая для креативности
temperature = 0.7
Максимальное количество токенов (max_tokens)¶
Что делает: Ограничивает длину ответа модели.
Как выбрать:
- Короткие ответы (100-500 токенов): Простые вопросы, краткие справки
- Средние ответы (500-2000 токенов): Анализ документов, развернутые ответы
- Длинные ответы (2000+ токенов): Генерация документов, подробный анализ
Важно: - Один токен ≈ 0.75 слова на русском - 1000 токенов ≈ 750 слов ≈ 1.5 страницы текста
Примеры:
# Краткий ответ
max_tokens = 200
# Развернутый анализ
max_tokens = 2000
# Генерация документа
max_tokens = 4000
Top-p (Nucleus Sampling)¶
Что делает: Ограничивает выбор слов только наиболее вероятными вариантами.
Диапазон: 0.0 - 1.0
Рекомендации:
- 0.1 - 0.3: Очень точные, предсказуемые ответы
- 0.5 - 0.7: Баланс точности и разнообразия
- 0.8 - 1.0: Более разнообразные ответы
Для юридических задач: Обычно 0.3 - 0.5
Top-k¶
Что делает: Ограничивает выбор только K наиболее вероятными словами.
Примеры:
- Top-k = 1: Всегда выбирает самое вероятное слово (очень предсказуемо)
- Top-k = 10: Выбирает из 10 наиболее вероятных
- Top-k = 50: Больше разнообразия
Для юридических задач: Обычно 20-40
Stop tokens (Стоп-слова)¶
Что делает: Указывает модели, когда прекратить генерацию.
Примеры использования:
# Остановиться при достижении конца раздела
stop = ["КОНЕЦ РАЗДЕЛА", "---"]
# Остановиться при завершении списка
stop = ["\n\n\n", "Конец списка"]
# Для генерации списков
stop = ["10.", "11."] # Остановиться после 10 пунктов
Практические примеры настройки¶
Пример 1: Анализ договора на риски¶
{
"model": "gpt-4",
"messages": [
{
"role": "system",
"content": "Ты юрист, анализирующий договоры на риски. Будь точным и конкретным."
},
{
"role": "user",
"content": "[текст договора]"
}
],
"temperature": 0.2, # Низкая для точности
"max_tokens": 2000, # Развернутый анализ
"top_p": 0.3 # Предсказуемые формулировки
}
Пример 2: Генерация проекта договора¶
{
"model": "gpt-4",
"messages": [
{
"role": "system",
"content": "Ты помощник, готовящий проекты договоров. Используй точную терминологию."
},
{
"role": "user",
"content": "Подготовь проект договора аренды офиса..."
}
],
"temperature": 0.3, # Немного выше для адаптации
"max_tokens": 4000, # Длинный документ
"top_p": 0.5
}
Пример 3: Поиск в судебной практике¶
{
"model": "gpt-4",
"messages": [
{
"role": "system",
"content": "Ты юрист, работающий с судебной практикой. Указывай точные реквизиты."
},
{
"role": "user",
"content": "Найди прецеденты по..."
}
],
"temperature": 0.1, # Очень низкая для точности
"max_tokens": 1500,
"top_p": 0.2
}
Влияние параметров на юридические задачи¶
Анализ документов¶
Цель: Точность, соответствие стандартам
Рекомендуемые параметры:
- Temperature: 0.1 - 0.3
- Top-p: 0.2 - 0.4
- Max tokens: 2000 - 4000 (зависит от объема анализа)
Почему: Нужны точные, проверяемые выводы, а не креативные интерпретации.
Генерация документов¶
Цель: Соответствие шаблонам с адаптацией под конкретный случай
Рекомендуемые параметры:
- Temperature: 0.2 - 0.4
- Top-p: 0.4 - 0.6
- Max tokens: 2000 - 8000 (зависит от типа документа)
Почему: Нужен баланс между стандартностью и адаптацией.
Поиск и анализ прецедентов¶
Цель: Точность информации, релевантность
Рекомендуемые параметры:
- Temperature: 0.1 - 0.2
- Top-p: 0.2 - 0.3
- Max tokens: 1500 - 3000
Почему: Критически важна точность фактов и релевантность.
Мозговой штурм и поиск решений¶
Цель: Разнообразие идей, нестандартные подходы
Рекомендуемые параметры:
- Temperature: 0.6 - 0.8
- Top-p: 0.7 - 0.9
- Max tokens: 1000 - 2000
Почему: Нужны разные варианты и подходы.
Работа с длинными документами¶
Проблема контекстного окна¶
Модели имеют ограничение на длину обрабатываемого текста. Если документ длиннее, нужно:
- Разбить на части и обрабатывать по частям
- Использовать модель с большим контекстом (Claude 200K, GPT-4 128K)
- Использовать RAG (см. раздел RAG)
Стратегии работы с длинными документами¶
Стратегия 1: Разбиение на разделы¶
graph TD
A[Длинный договор] --> B[Раздел 1]
A --> C[Раздел 2]
A --> D[Раздел 3]
B --> E[Анализ раздела 1]
C --> F[Анализ раздела 2]
D --> G[Анализ раздела 3]
E --> H[Объединение результатов]
F --> H
G --> H
style A fill:#e1f5ff
style H fill:#c8e6c9 Как делать:
1. Разбиваете договор на логические разделы
2. Анализируете каждый раздел отдельно
3. Объединяете результаты
Стратегия 2: Суммаризация и детальный анализ¶
- Сначала делаете краткое резюме всего документа
- Затем детально анализируете важные части
Стратегия 3: Использование RAG¶
RAG позволяет модели "понимать" весь документ, даже если он не помещается в контекстное окно (см. раздел RAG).
Практические советы¶
Совет 1: Начните с консервативных параметров
Для юридических задач лучше начать с низкой температуры (0.1-0.3) и увеличивать только если нужно больше разнообразия.
Совет 2: Тестируйте на реальных задачах
Параметры, которые работают для общих задач, могут не подойти для ваших специфических документов.
Совет 3: Используйте системные промпты
Правильный системный промпт часто важнее, чем настройка параметров.
Совет 4: Сохраняйте историю диалога
Модель работает лучше, когда видит контекст предыдущих сообщений.
Совет 5: Обрабатывайте ошибки
Всегда проверяйте ответы модели, особенно для критически важных задач.
Резюме¶
- Веб-чат — простой способ начать, но ограниченные возможности
- API — для автоматизации и интеграции в системы
- Системный промпт — ключевой инструмент настройки поведения модели
- Параметры (temperature, max_tokens и др.) — тонкая настройка для конкретных задач
- Для юридических задач обычно нужны консервативные параметры (низкая температура, предсказуемые ответы)
В следующем разделе мы разберем квантование — как запускать большие модели на обычных компьютерах.