Что такое API-ключ нейросети и как его не потерять вместе с деньгами
Решили подключить нейросеть к своему проекту — и первое, что просят, это API-ключ. Строка вида sk-proj-abc123..., которую показывают ровно один раз. Разбираемся, что это, где брать и как не проснуться со счётом на $2000.
Что такое API-ключ
API-ключ — это одновременно ваш логин, пароль и платёжная карта в одной строке. Кто держит ключ, тот тратит ваши деньги. Никакого второго фактора, никакого подтверждения по SMS: есть ключ — есть доступ.
Сравнение, которое всё объясняет: ключ — это не пароль от аккаунта, а ключ от кассы. Пароль от аккаунта можно сбросить по почте, и злоумышленник упрётся в двухфакторку. С API-ключом упираться не во что.
Где его взять
- OpenAI — platform.openai.com → API keys → Create new secret key.
- Anthropic — console.anthropic.com → API Keys.
- Google (Gemini) — aistudio.google.com → Get API key.
- DeepSeek, Together, OpenRouter — то же самое в личном кабинете.
Всюду одинаково: ключ показывают один раз при создании. Не скопировали — создавайте новый, посмотреть старый нельзя. Это не баг, а защита: сервис хранит не сам ключ, а его хеш.
Главное правило: ключ не живёт в коде
Самая частая и самая дорогая ошибка — вписать ключ прямо в код:
client = OpenAI(api_key="sk-proj-abc123...") # ❌ так нельзя
Почему это плохо: код попадает в Git, Git попадает на GitHub, а GitHub индексируется. По публичным репозиториям ходят боты, которые ищут ровно такие строки. От коммита до первого списания порой проходят минуты.
Как правильно — через переменные окружения. Создаёте файл .env рядом с проектом:
OPENAI_API_KEY=sk-proj-abc123...
В коде читаете оттуда:
import os
from openai import OpenAI
client = OpenAI(api_key=os.environ["OPENAI_API_KEY"]) # ✅
И обязательно добавляете .env в .gitignore:
.env
Это три строчки работы, которые отделяют вас от чужого счёта.
Поставьте лимит расходов — прямо сейчас
Даже если ключ не утечёт, от ошибки в цикле никто не застрахован. Бесконечный while с запросом внутри опустошает счёт быстрее, чем вы найдёте кнопку «стоп».
Что сделать в первый же день:
- OpenAI: Settings → Limits → задать Hard limit (жёсткий потолок в месяц) и Soft limit (порог для письма-предупреждения).
- Anthropic: Console → Usage limits.
- Общее правило: не привязывайте карту с большим лимитом. Лучше пополнять баланс вручную небольшими суммами (prepaid) — тогда потолок убытка равен балансу.
Отдельно: не давайте ключу лишних прав. У OpenAI можно создать ключ, ограниченный конкретным проектом. Если проектов несколько — заведите разные ключи, чтобы утечка одного не открывала всё.
Как понять, сколько вы тратите
Цена считается в токенах, а не в запросах. Отдельно за вход (ваш промпт), отдельно за выход (ответ модели). Прикинуть счёт заранее можно нашим калькулятором стоимости API, а понять, сколько токенов в вашем тексте, — счётчиком токенов.
Главная ловушка новичка — длинный контекст в цикле. Если вы каждый раз отправляете всю историю диалога, то с ростом переписки каждый следующий запрос дорожает. Тысяча сообщений «по чуть-чуть» может стоить дороже одного большого документа.
Ключ утёк. Что делать
Порядок действий — именно в этом порядке:
- Немедленно отзовите ключ в консоли (Revoke / Delete). Это первое, а не последнее: пока ключ жив, деньги текут.
- Создайте новый и подставьте в переменные окружения.
- Проверьте расход в разделе Usage — если списания есть, пишите в поддержку. Иногда идут навстречу, особенно при явной атаке ботов.
- Если ключ попал в Git — удалить строку и закоммитить недостаточно. Он остался в истории репозитория и в чужих форках. Ключ отозвать нужно в любом случае, чистка истории вторична.
Для GitHub есть хорошая новость: у него работает автоматическое сканирование секретов, и провайдеры вроде OpenAI по его сигналу отзывают ключ сами. Но полагаться на это как на защиту — плохая идея.
Что запомнить
- API-ключ = доступ к вашим деньгам. Не пароль, а ключ от кассы.
- Показывают один раз. Потеряли — создавайте новый.
- Никогда не в коде. Только переменные окружения +
.envв.gitignore. - Поставьте лимит расходов в первый же день, до первого запроса.
- Лучше prepaid-баланс, чем карта с большим лимитом.
- Утёк — сначала отзываете, потом разбираетесь.
Как устроена цена в токенах — в гайде про токены. Как защитить данные при работе с ИИ в целом — здесь. А если платить не хочется вовсе — можно запустить модель локально, там никаких ключей не нужно.