OpenAI
Táto stránka bola strojovo preložená. Prečítaj si pôvodný článok v angličtine.

Používanie Daybreak v Codex CLI

Táto príručka vám pomôže zapnúť Daybreak v Codex CLI, nakonfigurovať ho pre automatizované pracovné postupy a integrácie SDK a vyriešiť problémy s prístupom či odmietaním požiadaviek. 

Aktualizované: 21 hours ago

Ak chcete získať prístup k týmto zmenám, musíte aktualizovať Codex CLI na verziu 0.163.0 alebo novšiu. Aktualizácie CLI sú dobrovoľné: existujúce inštalácie si zachovajú súčasné správanie, kým ich neaktualizujete.

  • Ak vaša automatizácia inštaluje @openai/codex@latest, táto zmena sa môže prejaviť pri ďalšej inštalácii alebo aktualizácii. Ak ste Codex CLI nainštalovali globálne pomocou npm, spustite npm install -g @openai/codex@latest a potom overte aktualizáciu spustením codex --version.

  • Ak chcete zmenu odložiť, nastavte pevnú verziu @openai/codex@0.162.0. Jednorazová inštalácia pomocou @latest sa sama neaktualizuje. Pracovné postupy s pevne nastavenými staršími verziami si zachovajú pôvodné správanie.

  • Pri integráciách v jazyku TypeScript aktualizujte @openai/codex-sdk aj pribalené spúšťacie prostredie. Pri integráciách v jazyku Python aktualizujte openai-codex aj jeho spúšťacie prostredie Codex. Samotná aktualizácia globálneho CLI nemusí aktualizovať spúšťacie prostredie SDK. Ak máte nastavenú vlastnú cestu k spustiteľnému súboru, aktualizujte aj tento súbor.

CLI a Codex Desktop budú s manuálne nastavenými identifikátormi modelov, ktoré chýbajú v inak dostupnom katalógu, naďalej automaticky zaobchádzať ako doteraz, aj keď je Daybreak zapnutý. Samotná ich neprítomnosť v katalógu nebráni úspešnému vykonaniu požiadavky. 

Modely pre kybernetickú bezpečnosť môžu byť v ponuke modelov sprístupňované samostatne. Po ich sprístupnení používatelia s podporovanou verziou nemusia nič ďalšie sťahovať, aby sa im nové modely zobrazili. Zoznam obnovíte opätovným otvorením ponuky modelov alebo reštartovaním Codex.

Zapnutie Daybreak v interaktívnom CLI

  1. Spustite Codex so svojím obvyklým spôsobom overovania.

  2. Ak chcete zapnúť Daybreak, zadajte /daybreak.

  3. Codex oznámi Daybreak je zapnutý. Platí pre nové ťahy.

  4. Toto nastavenie sa použije pre aktívne vlákno a uloží sa ako predvolené pre nové relácie.

  5. Ak chcete vypnúť Daybreak, spustite rovnaký príkaz (/daybreak) znova.

Zapnutie Daybreak v CLI bez interaktívneho rozhrania

Pracovné postupy bez interaktívneho používateľského rozhrania bežne využívajú codex exec v skriptoch, naplánovaných úlohách alebo v CI. Interaktívna výzva „Zapnúť Daybreak“ (/daybreak) tu nie je k dispozícii. Namiesto toho môžete:

  1. Zapnúť Daybreak pre konkrétne spustenie CLI pridaním -c daybreak=true ku každému príkazu, pri ktorom chcete znížiť mieru odmietania. Môžete napríklad zadať:

codex exec -c daybreak=true "Review the changes in this repository."

  1. Ponechajte svoj existujúci príkaz pre model aj ostatné voľby príkazového riadka. Pridajte toto nastavenie ku každému volaniu, ktoré má používať Daybreak, vrátane príkazov v skriptoch, naplánovaných úlohách a konfigurácii CI.

  2. Nastaviť Daybreak ako predvolenú voľbu pre nové relácie a spustenia CLI pridaním daybreak=true do konfiguračného súboru, ktorý načítava Codex.

  3. Predvolená používateľská konfigurácia je v súbore ~/.codex/config.toml. Ak vaša automatizácia nastavuje CODEX_HOME, použite namiesto toho $CODEX_HOME/config.toml. Nastavenie umiestnite na najvyššiu úroveň, mimo sekcií, ako je [features].

  4. Zmenu vykonajte v prostredí, v ktorom automatizácia skutočne beží. Aktualizáciou konfigurácie na svojom notebooku neaktualizujete konfiguráciu vykonávacieho prostredia CI ani vzdialeného počítača.

  5. Nastavenie sa vzťahuje aj na nové interaktívne relácie, ktoré používajú rovnakú konfiguráciu. Obnovené a rozvetvené relácie si zachovajú uloženú voľbu Daybreak; nové predvolené nastavenie konfigurácie ju nenahradí.

  6. Upozorňujeme, že nastavenie v príkazovom riadku má pre dané volanie prednosť pred uloženou konfiguráciou. V konfigurácii teda môžete ponechať daybreak = true a pre jednotlivé spustenie použiť -c daybreak=false.

Zapnutie Daybreak pri prístupe k poskytovateľovi inferencie cez proxy

Daybreak môžete v Codex CLI používať aj pri smerovaní požiadaviek na inferenciu cez svoj existujúci proxy server. Codex pomocou samostatnej požiadavky do katalógu modelov zisťuje, ktoré modely podporujú Daybreak pre váš projekt.

Skôr než začnete, uistite sa, že máte v Codex CLI funkčného poskytovateľa cez proxy a kľúč API OpenAI z projektu s prístupom k Daybreak aj k modelu, ktorý chcete používať. Potrebujete tiež Codex CLI vo verzii v0.167.0.Dokumentácia OpenAI o prístupe projektu k Daybreak

  1. Aktualizujte nastavenia poskytovateľa cez proxy: otvorte ~/.codex/config.toml a vyhľadajte sekciu [model_providers.<id>] pre svoj proxy server. Do tejto sekcie pridajte posledné dva riadky z nasledujúceho príkladu. Ponechajte existujúce ID poskytovateľa, URL adresu proxy servera aj nastavenia autentifikácie.


    [model_providers.proxy]

    name = "Proxied with Cyber"

    base_url = "https://<your-proxy>/v1"

    model_catalog_url = "<https://chatgpt.com/backend-api/codex/models>"

    capabilities.cyber_access_programs = true

    Ak vaša konfigurácia už obsahuje sekciu [model_providers.<id>.capabilities], vložte cyber_access_programs = true do nej a model_catalog_url ponechajte v nadradenej sekcii poskytovateľa.Referenčná príručka konfigurácie Codex

  2. Nastavte autentifikáciu požiadaviek do katalógu výberom možnosti zodpovedajúcej prihlasovacím údajom, ktoré používa vaše CLI.

    1. Ak Codex používa kľúč API OpenAI, ponechajte URL adresu katalógu OpenAI z kroku 1. Spustite Codex s kľúčom z projektu s povoleným Daybreak, aby sa mohol autentifikovať priamo v katalógu.

    2. Ak Codex používa prihlasovacie údaje vášho proxy servera, nastavte model_catalog_url na úplnú URL adresu trasy katalógu na svojom proxy serveri. Nakonfigurujte túto trasu tak, aby:

      1. Autentifikovala požiadavku CLI pomocou vašich bežných prihlasovacích údajov pre proxy.

      2. Preposlala požiadavku na https://chatgpt.com/backend-api/codex/models pomocou kľúča API OpenAI z vášho projektu s povoleným Daybreak.

      3. Vrátila odpoveď katalógu do Codex.

  3. Zapnite Daybreak spustením novej relácie Codex CLI s vaším poskytovateľom cez proxy. Vyberte model, pre ktorý je Daybreak dostupný, a potom ho zapnite zadaním /daybreak.

    1. Ak Daybreak nie je dostupný, najprv skontrolujte požiadavku do katalógu. Inferencia môže prebehnúť úspešne aj vtedy, keď požiadavka do katalógu zlyhá. Overte, či sa požiadavka dostane do OpenAI s kľúčom zo zamýšľaného projektu a či má projekt prístup k Daybreak aj k vybranému modelu.

Zapnutie Daybreak cez SDK pre TypeScript

Odovzdajte nastavenie Daybreak cez konfiguráciu klienta:

import { Codex } from "@openai/codex-sdk";

const codex = new Codex({

  config: { daybreak: true },

});

const thread = codex.startThread();

const result = await thread.run("Review the changes in this repository.");

console.log(result.finalResponse);

Pomocou daybreak: false vypnete Daybreak a obnovíte bežné správanie pri odmietaní požiadaviek. Ponechajte existujúcu konfiguráciu overovania.

Zapnutie Daybreak cez aplikačný server alebo SDK pre Python

1. Načítajte hodnoty availableAccessPrograms.cyber vybraného modelu z model/list a potom nastavte cyberAccessProgram v parametroch turn/start.

a. Pre model z hlavného radu a účet s prístupom k Daybreak Blue:

{ "cyberAccessProgram": "daybreakBlue" }

b. Pre model pre kybernetickú bezpečnosť a účet s prístupom k Daybreak Red:

{ "cyberAccessProgram": "daybreakRed" }

c. Pre bežné správanie pri odmietaní požiadaviek:

{ "cyberAccessProgram": "standard" }

2. Uveďte túto voľbu v každom ťahu, v ktorom sa má použiť; nepredpokladajte, že vynechaním parametra sa Daybreak vypne. Klienti, ktorí sa pripájajú priamo k aplikačnému serveru, musia počas inicializácie povoliť funkciu experimentalApi, aby mohli tento parameter používať.

3. Nízkoúrovňový klient CodexClient v SDK pre Python môže odovzdať rovnaký parameter:

from openai_codex.client import CodexClient

with CodexClient() as client:

client.initialize()

thread = client.thread_start()

turn = client.turn_start(

thread.thread.id,

"Review the changes in this repository.",

params={"cyberAccessProgram": "daybreakBlue"},

)

client.wait_for_turn_completed(turn.turn.id)

4. Tento príklad predpokladá, že pre vybraný model je dostupný Daybreak Blue. Klient pre Python má funkciu experimentálneho API predvolene povolenú. Samotná uložená predvoľba vlákna neurčuje program pre ťah na aplikačnom serveri.

Ak ste pred týmito zmenami pridali lokálny katalóg modelov

Ak sa vám po prihlásení pomocou kľúča API predtým nezobrazovali očakávané modely, možno ste pridali lokálny katalóg pomocou model_catalog_json v súbore config.toml. Codex používa tento lokálny súbor namiesto automatického katalógu, takže váš zoznam modelov môže zastarať. Keď bude vo vašom prostredí dostupná podpora automatického katalógu, prepnite späť podľa týchto krokov:

  1. Otvorte config.toml. Pre Codex CLI otvorte ~/.codex/config.toml (alebo $CODEX_HOME/config.toml, ak ste nastavili CODEX_HOME). V Codex Desktop prejdite na Nastavenia > Konfigurácia a vyberte Otvoriť config.toml.

  2. Dočasne vypnite lokálny katalóg. Na začiatok riadka model_catalog_json pridajte #, uložte súbor a reštartujte Codex s rovnakým účtom alebo kľúčom API. Ponechajte všetky adresy URL katalógov, ktoré vaša organizácia vyžaduje.

  3. Overte svoj prístup. V CLI spustite codex a potom v relácii zadajte /daybreak. V aplikácii Desktop otvorte rozšírenú ponuku modelov a zapnite Daybreak. Ak máte prístup k Daybreak Red, overte, či sa zobrazuje očakávaný model pre kybernetickú bezpečnosť a či pomocou neho môžete odoslať požiadavku.

  4. Ponechajte funkčnú konfiguráciu. Ak overenie prebehne úspešne, odstráňte deaktivovaný riadok a uložte súbor. Ak zlyhá, odstráňte #, uložte súbor a reštartujte Codex, čím obnovíte predchádzajúce nastavenie.

Riešenie odmietnutí v CLI

  • Spustite typickú úlohu s rovnakými prihlasovacími údajmi, modelom a konfiguráciou, aké používa vaša automatizácia.

  • Ak Daybreak nie je dostupný, overte, či:

    • Váš účet alebo projekt API má prístup k Daybreak.

    • Vybraný model podporuje Daybreak.

  • V interaktívnom CLI skontrolujte, či je Daybreak zapnutý. Ak je Daybreak dostupný, ale vypnutý, interaktívne CLI môže zobraziť správu o odmietnutí: Daybreak je momentálne vypnutý. Ak vykonávate autorizovanú prácu v oblasti bezpečnosti, zapnite ho a skúste požiadavku odoslať znova.

    • Zobrazí sa otázka Zapnúť Daybreak pre ďalšiu požiadavku? s možnosťami Zapnúť Daybreak a Teraz nie.

    • Výberom možnosti Zapnúť Daybreak ho zapnite pre ďalšiu požiadavku a potom požiadavku skúste odoslať znova. Odmietnutá požiadavka sa automaticky nezopakuje; musíte ju odoslať znova. Niektoré požiadavky môžu byť odmietnuté aj so zapnutým Daybreak.

    • Výberom možnosti Teraz nie ponecháte Daybreak vypnutý.

  • Pri automatizáciách overte, či sa daybreak=true skutočne odovzdáva procesu Codex a či ho neprepisuje iné nastavenie príkazového riadka.

Používanie Daybreak s Codex Security CLI

Codex Security CLI používa na bezpečnostné kontroly @openai/codex-security. Jeho možnosti nastavenia prístupových programov sú oddelené od všeobecných príkladov pre Codex CLI uvedených vyššie.

Na autentifikáciu pomocou kľúča API použite kľúč z projektu API s povoleným Daybreak a výslovne vyberte program schválený pre daný projekt. Pre Daybreak Blue:


npx @openai/codex-security scan . --auth api-key --cyber-access-program daybreak_blue

Možnosť daybreak_red použite len vtedy, ak je váš projekt schválený pre Daybreak Red. Pre štandardné ochranné opatrenia použite standard. Výber programu vám neudelí prístup k danému programu ani k ďalším modelom.

Možnosti autentifikácie a bezpečnostných kontrol nájdete v referenčnej príručke Codex Security CLI.

Používanie Daybreak s Codex Security SDK

Codex Security SDK pre TypeScript (@openai/codex-security) spúšťa bezpečnostné kontroly z aplikácie alebo vývojárskeho nástroja. Je oddelený od všeobecného Codex SDK opísaného vyššie.

Použite prihlasovacie údaje pre svoj schválený účet alebo projekt API. Niektoré požiadavky v oblasti kybernetickej bezpečnosti a chránené zistenia vyžadujú Trusted Access for Cyber. Inštaláciou SDK ani výberom modelu nezískate prístup k Daybreak.

Informácie o podporovanej autentifikácii, konfigurácii a príklady bezpečnostných kontrol nájdete v príručke Codex Security SDK.

Bol tento článok užitočný?