Pierwsze krokiPrzewodnik
Pierwsze zapytanie z Google Colab: trzymaj klucz API w Secrets
Wyślij pierwsze uzupełnienie czatu z notatnika Colab z kluczem przechowywanym w Colab Secrets, a następnie odczytaj odpowiedź i zużycie tokenów.

Na tej stronie
Możesz wykonać pierwsze zapytanie w notatniku Colab, nie instalując niczego na komputerze. Zapisz klucz w Colab Secrets, odczytaj go za pomocą userdata., skieruj pakiet openai na https:/ i wypisz choices[0]. oraz usage. Klucz nigdy nie znajduje się w komórce, więc udostępnienie notatnika nie udostępnia Twojego klucza.
To ostatnie jest powodem, dla którego warto się tym zająć. Załóżmy, że kończysz notatnik i wysyłasz link koledze z klasy. Jeśli klucz jest wklejony do komórki, teraz go ma. Jeśli znajduje się w Secrets, dostaje kod i nic więcej.
Ten przewodnik opiera się na pierwszym zapytaniu ze zwykłym requests. Tutaj jedyną nowością jest to, gdzie znajduje się klucz i jak notatnik go odczytuje. Tę samą ideę na laptopie opisuje przechowywanie klucza w zmiennej środowiskowej.
Czego potrzebujesz#
- Konta Google i nowego notatnika na colab.research.google.com.
- Klucza API CheapTokens i doładowanego salda. Klucze i saldo są na Twoim koncie; dokumentacja pokazuje dokładne kroki.
- Pięciu minut.
API jest zgodne z OpenAI Chat Completions, więc standardowy pakiet Pythona openai działa z innym base_url. README openai-python (sprawdzone 5 listopada 2026) wymienia Python 3.10 lub nowszy oraz pip install openai.
Umieść klucz w Colab Secrets#
Na lewym pasku bocznym notatnika znajduje się ikona klucza, która otwiera panel Secrets. Dodaj nowy sekret, nazwij go CHEAPTOKENS_KEY, wklej swój klucz jako wartość i włącz dostęp dla notatnika, w którym pracujesz. Brzmienie przycisków może się zmieniać, więc szukaj ikony klucza, a nie ścieżki w menu.
Wybierz nazwę teraz: to ciąg znaków, który przekażesz do kodu. Błędna nazwa to łatwy błąd, a sekcja błędów pokazuje, jak to wygląda.

Uruchom pierwsze zapytanie#
Colab odczytuje sekrety za pomocą google., funkcji w module colabtools firmy Google (docstringi sprawdzone 5 listopada 2026). Zainstaluj SDK, odczytaj sekret, wyślij jedno zapytanie.
Krok po kroku
Twoje pierwsze zapytanie w trzech komórkach
Zainstaluj pakiet
Uruchom to w pierwszej komórce. Flaga -q skraca dane wyjściowe i działa niezależnie od tego, czy pakiet jest już w środowisku uruchomieniowym.
!pip install -q openaiOdczytaj klucz i utwórz klienta
Klucz pochodzi z Secrets. Nic nie jest tutaj wklejane.
from google.colab import userdata
from openai import OpenAI
client = OpenAI(
api_key=userdata.get('CHEAPTOKENS_KEY'),
base_url='https://api.cheaptokens.dev/v1',
)Wyślij jedno zapytanie i wypisz wynik
Użyj pełnego identyfikatora modelu z prefiksem deweloperskim. Krótkie identyfikatory nie są akceptowane.
resp = client.chat.completions.create(
model='deepseek-ai/DeepSeek-V4-Flash-0731',
messages=[{'role': 'user', 'content': 'Explain a token in one sentence.'}],
max_tokens=200,
)
print(resp.choices[0].message.content)
print(resp.usage.prompt_tokens, resp.usage.completion_tokens)Pierwszy print pokazuje odpowiedź modelu. Drugi wypisuje dwie liczby: tokeny, które wysłałeś, i tokeny, które napisał model. To cały rachunek za zapytanie, dlatego wypisujemy go za każdym razem.
Ile kosztuje zapytanie#
Płacisz za tokeny, więc spójrz na drugą linię danych wyjściowych. Załóżmy, że krótkie pytanie jak powyższe zużywa około 40 tokenów na wejściu, a odpowiedź to 150 tokenów na wyjściu. To zapytanie kosztuje $0.000016 przy obecnej cenie, a tysiąc takich kosztuje $0.0156. Zastąp 40 i 150 dwiema liczbami, które wypisał Twój notatnik.
DeepSeek-V4-Flash jest tutaj domyślnym modelem nie bez powodu: kontekst 380K, do 32 768 tokenów wyjściowych na odpowiedź i jedna cena o każdej porze dnia, bez godzin szczytu. Jedno saldo obejmuje każdy model, więc możesz podmienić model w tej komórce bez zmiany czegokolwiek innego. Wypróbuj zai- (kontekst 390K, do 8 192 tokenów wyjściowych) i uruchom komórkę ponownie. Pełną listę znajdziesz w wszystkie modele i ceny.
Spróbuj samWypróbuj: ile to jest resp.choices[0].finish_reason ?Pokaż odpowiedź
Dodaj print(resp. pod pozostałymi instrukcjami print. Jeśli odpowiedź zakończyła się naturalnie, zobaczysz stop. Ustaw max_tokens=5 i uruchom ponownie: odpowiedź zostanie przerwana i zobaczysz length, co oznacza, że zatrzymał ją limit, a nie model.
Gdy komórka zawiedzie#
Błędy po stronie sekretów pojawiają się najpierw, zanim jakiekolwiek zapytanie opuści Colab. Źródło colabtools (sprawdzone 5 listopada 2026) mówi, że userdata.get może zgłosić trzy błędy.

SecretNotFoundError: nie ma sekretu o tej nazwie. Porównaj ciąg wuserdata.z nazwą w panelu Secrets, litera po literze. Wielkość liter ma znaczenie.get('. . . ') NotebookAccessError: sekret istnieje, ale ten notatnik nie ma do niego dostępu. Włącz przełącznik dostępu w panelu Secrets i uruchom komórkę ponownie.TimeoutException: Colab nie odpowiedział na żądanie sekretu. Komunikat błędu mówi, że sekrety można pobierać tylko wtedy, gdy kod działa z interfejsu Colab, więc uruchom komórkę w samym notatniku Colab, a nie w wyeksportowanym skrypcie.
Jeśli sekret się załaduje, a zapytanie nadal zawodzi, problem leży po stronie API. 401 oznacza, że klucz jest błędny lub go brakuje; 404 zwykle wskazuje na błędny bazowy URL lub identyfikator modelu. API 401 lub 404: klucz, bazowy URL, identyfikator modelu omawia oba przypadki, a wyświetlanie modeli za pomocą GET /v1/models pokazuje, jak skopiować dokładny identyfikator.
Udostępnianie i rotacja#
Udostępnij notatnik, a kod, który wywołuje userdata.get, pójdzie z nim; klucza nie ma w żadnej komórce ani danych wyjściowych, więc nie ma czego wyciekać. Kto otworzy notatnik, potrzebuje własnego sekretu o tej samej nazwie, w przeciwnym razie otrzyma SecretNotFoundError (patrz wyżej).
Jeśli utworzysz nowy klucz, zaktualizuj wartość w panelu Secrets; kod pozostaje ten sam, ponieważ tylko nazywa sekret.
Jeden nawyk nadal ma znaczenie: nigdy nie wypisuj klucza. Komórka taka jak print(userdata. umieszcza go w danych wyjściowych, a dane wyjściowe są zapisywane razem z notatnikiem.
Szybkie sprawdzenie
Gdzie powinien znajdować się klucz API w udostępnianym notatniku Colab?
Pokaż odpowiedź
Odpowiedź: W Colab Secrets, odczytywany za pomocą userdata.get
Komórka i jej dane wyjściowe są zapisywane razem z notatnikiem i udostępniane wraz z nim; kod tylko nazywa sekret.
Następny krok: umieść odpowiedź w pętli, czacie lub małym narzędziu. Dokumentacja opisuje resztę API.



