Галоўная / Артыкулы / API Claude на Pythonе з системай боковых каналаў, тэкст

API Claude на Pythonе з системай боковых каналаў, тэкст

Зберагаюце паведамленні у портатывным формате, пры чым інструкцыі системы размешчаюцца празмаўкай зі спісам выбору для калектваў у формате Anthropic.

805 слоў

У гэтым керавані зноў ствараецца парадокс ад сыр'ёў да рабочай системы для: Частка 3 — Выкліканне API Claude на Python (тыя ж паведамленні, система па боку). Акцэнт ставяцца на крокі, якія можна выконваць, чыстае перакананне і код, який можна падставіць у репазітары без неабяснення намеру. Для агледзення, перш чым зменяць код, неабходна визначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння. Аперацыёныя працавікі должны магчымае перадзваніць крок з вядомай точкі контролю без неабяснення схованага стану. Документавайце як успішны, так і варыянт вярнення. Перапрыбуткі, людзкіе контралі і обработка некоректных паведамленняў є частью продукту, а не пасляднім дапрацоўкам.

import anthropic

client = anthropic.Anthropic()  # key from env

resp = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=300,
    system="You are a concise Python assistant.",
    messages=[
        {
            "role": "user",
            "content": "Why is system a parameter "
                       "here, not a message?",
        },
    ],
)
print(resp.content[0].text)
msgs = []

def ask(text: str) -> str:
    msgs.append(
        {"role": "user", "content": text}
    )
    resp = client.messages.create(
        model="claude-sonnet-4-5",
        max_tokens=300,
        system="You are a concise assistant.",
        messages=msgs,  # full history
    )
    reply = resp.content[0].text
    msgs.append(
        {"role": "assistant", "content": reply}
    )
    return reply

print(ask("Define a context window."))
print(ask("Now for a five-year-old."))
print(ask("Which answer was shorter?"))
pip install -r requirements.txt
export ANTHROPIC_API_KEY="sk-ant..."
python examples/part03_claude.py

Чэк-ліст для эксплуатацыі

Чэк-ліст для эксплуатацыі працюе найкраща, калі яго спрыяглядаць як вимерную плошчу. Запісуйце адна ідеальная транскрыпцыю, адзін кейс абякання і прыметку па вярненню да пачатковага стану перш чым расширваць масштаб.

Зберагаюце канфігурацыю пазначкай за межамі коду прыемліка. Файлы сяродавішчыны, хранальнікі секрэтных дадзеных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаюць адбавіць аудыт без неабяжнага чытання всіх элементаў системы.

Закрепіце інтэрпретара і файл з пазначкамі завыскаў залежнасцяў пры падготавке ціклу. Разніця ў настройках межы ноутбука і среды CI являецца найчастэйшай прычыной тых, чым не спрацоўваюць дэманстраціі API.

Калі бюджет дазволяе, адключыце тэст на працясную роботу, які перавершвае критычны маршрут у средзе CI з викорыстаннем фіксатываў, а не рэальных платных API.

Дакументаваць трэба як штатны, так і патронажны маршруты працы. Перапрыбуткі, людзкія контрольныя пункты і обработка некоректных паведамленняў є часткай продукту, а не елементамі, якія дадаюцца пазней.

Закрепіце інтэрпретара і файл з пазначкамі завыскаў залежнасцяў пры падготавке ціклу. Разніця ў настройках межы ноутбука і среды CI являецца найчастэйшай прычыной тых, чым не спрацоўваюць дэманстраціі API.

Перш чым запускать стак, заморозьце версіі, зафіксавайце ідеальны транскрыпт для критычнага шляху і паказвайце спосабы абяроны. У спільных средах неабходны ліміты частоты, пераконтрольванне прав на выкарыстоўвання ресурсаў і чысткі власнік для змены секрэтных даных. Лепш выбіраць простую надзею на надзейнасць, чым хітрыя експерыментальныя дэманстрацыі.

Прыметка для ded6445166ef: не кладзіце ключы прадаўцоў у репазітарый, задаце ліміт токена на кожную сесію і зберагачыце транскрыпты разам з фіксатрамі для ацэнкі, каб пазнейшыя замены моделей заставаліся порównанымі.

Прыметка па забезпечэнню надзейнасці 0 работае лепш, калі яе спрыягчваць як мерыемую величыну. Зафіксавайце адны ідеальны транскрыпт, адзін прыклад неудачы і прыметку па абяроне перш чым расширваць масштаб. Запісвайце часы выканання і вартасць токена або запыту разам з функцыйнальнымі рэзултатамі. Відразувыя даны пра вартасць запобегаюць неспакоўным рахункам, калі працэс пераходзіць з дэманстрацыі ў спільныя среды.

Дзеянне паўжчання 0/872: звярніце увагу на час выканання, класыя ошибак і колькасць токенаў, якія былі выкарыстаны для гэтага запісу, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на асобістых спазырэннях, выявіце, чы хацяце застаўіць змены.

Для запісу паўжчання 1 адначасна з выконаннем змян у кодзе неабходна вызначыць параметры, адпаведальнага за крок і критэрыя завершэння. Аперацыяныя працавнікі должны магчымае перадзвануць гэты крок з вядомага пункта контролю, не прымуджаючыся здагадвацца пра схованы стан. Неабходна задокументаваць як шлях успеху, так і шлях вярнення да нормальнага стану. Практыка павтарэння спроб, людзкія контрольны пункты і обработка некоректных паведамленняў є часткай продукту, а не чымсь, што дадаецца пазней.

Дзеянне паўжчання 1/872: звярніце увагу на час выканання, класыя ошибак і колькасць токенаў, якія былі выкарыстаны для гэтага запісу, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на асобістых спазырэннях, выявіце, чы хацяце застаўіць змены.

Калі працуеце над пунктом 2 адзынківання, спачатку запісайце контракт: неабяжлівыя вхідныя даны, сігнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі список пераконвае ў тым, што пазнейшыя змены коду будуць чыстымі. Спрэтывайце да гэтага этапу як да контракту межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, задаце критэрыя успеху і адмовіцеся ад мовчанкавага частковага завершэння.

Дзялённе 2/872 адзынківання: змерьце час выкарыстоўвання, класію каштоўкі і выкарыстоўванне токенав для гэтага пункту, а потым выявіце, чы хацеце застаўіць змену на адной пазначанай сэткі пытанняў, а не на адной лячбе.

Пункт 3 адзынківання будзе працаваць наяўней, калі яго спрэтываць як меравальную плошчу. Запісайце адну ідеальную транскрыпцыю, адзін кейс нявыпання і прыметкі па адкатаванні, перш чым расширваць масштаб. Зберагачыце канфігурацыю парадульна да коду прыкладнення. Файлы сяродавішча, хранільнікі секрэтных дадзеных і флагі функций павінны знаходзіцца ў адном месцы, якое аператары можаць пераглядаць без неабяжлівага чытання всей структуры.

Дзеянне паўжасткі 3/872: звярніце увагу на час обработкі, клас памылак і колькасць токенав, які былі выкарыстоўаны для гэтага зьвясткі, а пасля выберыце, чы робіць змяну на аднойчынае падставе фіксаванага набору запытанняў, а не на аднойчынае падставе індывідуальных прыкладаў.