Gå til hovedindhold
OpenAI

16. maj 2025

UdgivelseProdukt

Vi præsenterer Codex

En cloud-baseret softwareudviklingsagent, der kan arbejde på mange opgaver parallelt, drevet af codex-1. Tilgængelig for ChatGPT Pro-, Team- og Enterprise-brugere i dag samt Plus-brugere snart.

Dashboard, der spørger "Hvad skal vi kode nu?" med en forespørgselsboks, vælgere for lagringsplads/branch og en opgaveliste på en pastelfarvet baggrund med kodetema.
Indlæser ...

Opdatering den 3. juni 2025: Codex er nu tilgængelig for ChatGPT Plus-brugere. Vi gør det også muligt for brugere at give Codex internetadgang under udførelse af opgaver. Selogfil for ændring(åbner i et nyt vindue) og dokumenter(åbner i et nyt vindue) for flere oplysninger.


I dag lancerer vi en forhåndsvisning af research i Codex: En cloud-baseret softwareudviklingsagent, der kan arbejde på mange opgaver ad gangen. Codex kan foretage opgaver for dig som f.eks. at skrive funktioner, besvare spørgsmål om din kodebase, løse fejl og foreslå pull-anmodninger til gennemgang. Hver opgave kører i sit eget cloud-sandkassemiljø, der er forudindlæst med dit lager.

Codex er drevet af codex-1, en version af OpenAI o3, der er optimeret til softwareudvikling. Den er blevet trænet ved hjælp af forstærkende læring på kodningsopgaver i den virkelige verden i en række forskellige miljøer for at generere kode, der nøje afspejler menneskelig stil og PR-præferencer, følger instruktioner præcist og kan køre tests iterativt, indtil den modtager et bestået resultat. Vi er begyndt at udrulle Codex til ChatGPT Pro-, Enterprise- og Team-brugere i dag, og understøttelse af Plus og Edu kommer snart.

Sådan fungerer Codex

I dag kan du tilgå Codex gennem sidebjælken i ChatGPT og tildele den nye kodningsopgaver ved at skrive en forespørgsel og klikke på "Kode". Hvis du vil stille Codex et spørgsmål om din kodebase, skal du klikke på "Ask". Hver opgave behandles uafhængigt i et separat, isoleret miljø, der er forudindlæst med din kodebase. Codex kan læse og redigere filer samt køre kommandoer, herunder testværktøjer, kodekontroller (linters) og typetjekkere. Opgavefuldførelse tager normalt mellem 1-30 minutter alt efter kompleksitet, og du kan overvåge Codex’ fremgang i realtid.

Når Codex fuldfører en opgave, gemmer den ændringerne i dens miljø. Codex leverer verificerbart bevis på dens handlinger gennem henvisninger til terminallogge og testoutputs, hvilket giver dig mulighed for at spore hvert trin, der er taget under opgavefuldførelsen. Du kan derefter gennemgå resultaterne, anmode om yderligere revideringer, åbne en pull-anmodning i GitHub eller integrere ændringerne direkte i dit lokale miljø. I produktet kan du konfigurere Codex-miljøet til at matche dit virkelige udviklingsmiljø så meget som muligt.

Codex kan vejledes af AGENTS.md-filer, der er placeret i dit lager. Dette er tekstfiler, i stil med README.md, hvor du kan informere Codex om, hvordan den skal navigere i din kodebase, hvilke kommandoer, der skal køres til testning, og hvordan den bedst kan overholde standardfremgangsmåderne for dit projekt. Som med menneskelige udviklere yder Codex-agenter bedst, når de gives konfigurerede udviklermiljøer, pålidelige testopsætninger og tydelig dokumentation. 

På kodningsevalueringer og interne referencer viser codex-1 stærk ydeevne, selv uden AGENTS.md-filer eller tilpasset scaffolding.

23 SWE-Bench-verificerede prøver, der ikke kunne køres på vores interne infrastruktur, blev udeladt. codex-1 blev testet med en maksimal kontekstlængde på 192.000 tokens og middel "ræsonneringsindsats", hvilket svarer til den indstilling, der vil være tilgængelig i produktet i dag. Se her for detaljer om o3‑evalueringer.

Vores interne SWE-opgavebenchmark er et omhyggeligt udvalgt sæt af interne SWE-opgaver fra brug i praksis hos OpenAI.

Byg sikre og troværdige agenter

Vi udgiver Codex som en research-forhåndsvisning på linje med vores iterative implementeringsstrategi. Vi har prioriteret sikkerhed og gennemsigtighed under designet af Codex, så brugere kan verificere dets outputs – en sikkerhedsforanstaltning, der bliver mere og mere vigtig, efterhånden som AI-modeller håndterer mere komplekse kodningsopgaver uafhængigt, og sikkerhedsovervejelser udvikles. Brugere kan kontrollere Codex' arbejde gennem henvisninger, terminallogge og testresultater. Hvis Codex-agenten er usikker eller støder på testfejl, kommunikerer den udtrykkeligt disse problemer og giver brugere mulighed for at træffe informerede beslutninger om, hvordan de vil fortsætte. Det er stadig vigtigt, at brugere manuelt gennemgår og validerer al agentgenereret kode, før integration og udførelse.

Skærmbillede af kodegennemgang med en overlejring med testfil, som verificerer henviste filnavne samt sammenfatning og beståelse af tests på en blå baggrund.
Skærmbillede af kodegennemgang med en overlejring med sort terminal, der viser en bestået test for henviste filnavne. Resumé og forskellen i ændringen "Fix /diff error with special characters" kan ses på blå pastelfarvet baggrund.

Tilpasning til menneskelige præferencer

Et primært mål under træning af codex-1 var at tilpasse outputs så tæt på menneskelige kodningspræferencer og -standarder som muligt. Sammenlignet med OpenAI o3 producerer codex-1 hele tiden renere segmenter, der er klar til øjeblikkelig, menneskelig gennemgang og integration i standardarbejdsprocesser.

Please fix the following issue in the astropy/astropy repository. Please resolve the issue in the problem below by editing and testing code files in your current code execution session. The repository is cloned in the /testbed folder. You must fully solve the problem for your answer to be considered correct. Problem statement:Modeling's `separability_matrix` does not compute separability correctly for nested CompoundModels Consider the following model: ```python from astropy.modeling import models as m from astropy.modeling.separable import separability_matrix cm = m.Linear1D(10) & m.Linear1D(5) ``` It's separability matrix as you might expect is a diagonal: ```python >>> separability_matrix(cm) array([[ True, False], [False, True]]) ``` If I make the model more complex: ```python >>> separability_matrix(m.Pix2Sky_TAN() & m.Linear1D(10) & m.Linear1D(5)) array([[ True, True, False, False], [ True, True, False, False], [False, False, True, False], [False, False, False, True]]) ``` The output matrix is again, as expected, the outputs and inputs to the linear models are separable and independent of each other. If however, I nest these compound models: ```python >>> separability_matrix(m.Pix2Sky_TAN() & cm) array([[ True, True, False, False], [ True, True, False, False], [False, False, True, True], [False, False, True, True]]) ``` Suddenly the inputs and outputs are no longer separable? This feels like a bug to me, but I might be missing something?
Codex
OpenAI o3

Forebyggelse af misbrug

Det bliver mere og mere vigtigt at beskytte mod ondsindet anvendelse af AI-dreven softwareudvikling, f.eks. udvikling af malware. Samtidigt er det vigtigt, at beskyttelsesforanstaltninger ikke på urimelig vis hindrer legitim og fordelagtig anvendelse, der kan involvere teknikker, som sommetider også anvendes til udvikling af malware, f.eks. udvikling af kerner på lavt niveau.

For at afbalancere sikkerhed og anvendelighed blev Codex trænet til at identificere og på præcis vis afvise anmodninger, der var rettet mod udvikling af ondsindet software, og tydeligt kende forskel på og støtte legitime opgaver. Vi har også forbedret vores politikrammer og inkorporeret strenge sikkerhedsevalueringer for at forstærke disse grænser effektivt. Vi har offentliggjort et tillæg til o3‑systemkortet for at afspejle disse evalueringer.

Sikker udførelse

Codex-agenten fungerer udelukkende i en sikker, isoleret container i clouden. Under opgaveudførelse er internetadgangen deaktiveret, hvilket begrænser agentens interaktion udelukkende til koden, der udtrykkeligt er angivet via GitHub-lagre og forudinstallerede afhængigheder, der er konfigureret af brugeren via et opsætningsscript. Agenten kan ikke få adgang til eksterne websites, API'er eller andre tjenester.

Tidlige use cases

Tekniske teams hos OpenAI er begyndt at bruge Codex som en del af deres daglige værktøjssæt. Den anvendes oftest af OpenAI-teknikere til at aflaste repetitive opgaver med veldefineret omfang, f.eks. omstrukturering, ændring af navn og skrivning af tests, der i modsat fald kan bryde fokus. Den er også nyttig til at tilrettelægge nye funktioner, tilkoble komponenter, løse fejl og oprette udkast til dokumentation. Teams bygger nye vaner omkring den: prioritering af akutte problemer, planlægning af opgaver i starten af dagen og aflastning af baggrundsarbejde for at holde tingene i gang. Ved at reducere kontekstskift og fremhæve glemte opgaver hjælper Codex teknikerne med at levere hurtigere og holde fokus på det, der er vigtigst.

Før udgivelsen har vi også samarbejdet med en lille gruppe af eksterne testere for bedre at forstå, hvordan Codex klarer sig på tværs af forskellige kodebaser, udviklingsprocesser og teams.

  • Cisco(åbner i et nyt vindue) udforsker, hvordan Codex kan hjælpe dens tekniske teams med at bringe ambitiøse ideer til live hurtigere. Som tidlige designpartner hjælper Cisco med til at forme fremtiden for Codex ved at evaluere den i forhold til virkelige use cases på tværs af deres produktportefølje og give feedback til OpenAI-teamet.
  • Temporal(åbner i et nyt vindue) bruger Codex til at fremskynde funktionsudvikling, løse problemer, skrive og udføre tests samt omstrukturere store kodebaser. Den hjælper dem også med at holde fokus ved at køre komplekse opgaver i baggrunden – herved beholdes teknikerne i processen, men iteration fremskyndes.
  • Superhuman(åbner i et nyt vindue) bruger Codex til at fremskynde små, men repetitive, opgaver som f.eks. at forbedre testdækning og løse integrationsfejl. Den hjælper dem også med at levere hurtigere ved at lade produktchefer bidrage med mindre kodeændringer, uden at skulle involvere en tekniker, undtagen til kodegennemgang.
  • Kodiak(åbner i et nyt vindue) bruger Codex som hjælp til at skrive fejlsøgningsværktøjer, forbedre testdækning og omstrukturere kode – hvilket fremskynder udviklingen af Kodiak Driver, deres autonome kørselsteknologi. Codex er også blevet et værdifuldt opslagsværktøj og hjælper teknikere med at forstå dele af stakken, de ikke er bekendt med, ved at vise relevant kontekst og tidligere ændringer.

Baseret på erfaringerne fra tidlige testere anbefaler vi at tildele opgaver med godt defineret omfang til flere agenter samtidig og eksperimentere med forskellige typer opgaver og forespørgsler for at udforske modellens kapacitet på effektiv vis.

Opdateringer af Codex CLI

Sidste måned lancerede vi Codex CLI, en letvægts open source-kodeagent, der kører i din terminal. Den leverer ydeevnen fra modeller som f.eks. o3 og o4-mini i din lokale arbejdsproces, og gør det nemt at parre med dem for at fuldføre opgaver hurtigere. 

I dag har vi også udgivet en mindre version af codex-1, en version af o4-mini designet specifikt til brug i Codex CLI. Denne nye model understøtter hurtigere arbejdsprocesser i CLI'en og er optimeret til spørgsmål og svar om kode og redigering med lav latens og bevarer samtidig de samme styrker i forbindelse med at følge instruktioner og stil. Den er tilgængelig nu som standardmodel i Codex CLI og i API'en som codex-mini-latest. Det underliggende snapshot vil regelmæssigt blive opdateret, efterhånden som vi fortsætter med at forbedre Codex-mini-modellen.

Vi gør det også meget nemmere at knytte din udviklerkonto til Codex CLI. I stedet for manuelt at generere og konfigurere et API-token, kan du nu logge ind med din ChatGPT‑konto og vælge den API-organisation, du vil bruge. Vi genererer og konfigurerer automatisk API-nøglen for dig. Plus- og Pro-brugere, der logger ind på Codex CLI med ChatGPT, kan også begynde at indløse henholdsvis 5 og 50 USD i gratis API-kreditter senere i dag og i de næste 30 dage.

Codex' tilgængelighed, priser og begrænsninger

Fra og med i dag er vi begyndt at udrulle Codex til ChatGPT Pro-, Enterprise- og Team-brugere globalt og understøttelse af Plus og Edu kommer snart. Brugere vil have generøs adgang uden yderligere omkostninger i de kommende uger, så du kan udforske, hvad Codex kan gøre, og herefter vil vi udrulle prisbegrænset adgang og fleksible prismuligheder, der giver dig mulighed for at købe yderligere brug efter behov. Vi planlægger at udvide adgangen til Plus- og Edu-brugere snart.

For udviklere, der bygger med codex-mini-latest, er modellen tilgængelig på Respons-API'en og koster 1,50 USD pr. 1 million input-tokens og 6 USD pr. 1 million output-tokens med en 75 % rabat på caching af forespørgsler.

Codex er stadig i sin tidlige udvikling. Som en research-forhåndsvisning mangler den i øjeblikket funktioner som f.eks. billedinputs til frontend-arbejde, samt muligheden for at korrigere agentens kurs, mens den arbejder. Derudover tager uddelegering til en fjernagent længere tid end interaktiv redigering, hvilket kan tage noget tid at vænne sig til. Med tiden vil interaktion med Codex-agenter i stigende grad minde om asynkront samarbejde med kollegaer. Efterhånden som modelfunktionerne skrider frem, forudser vi, at agenter vil håndtere mere komplekse opgaver over længere perioder.

Kommende tiltag

Vi forestiller os en fremtid, hvor udviklere styrer det arbejde, de ønsker at eje, og uddelegerer resten til agenter – og er dermed hurtigere og mere produktive med AI. For at opnå dette er vi ved at bygge en række Codex-værktøjer, der understøtter både samarbejde i realtid og asynkron uddelegering. 

Parring med AI-værktøjer som f.eks. Codex CLI og andre er hurtigt blevet en branchenorm, og det hjælper udviklere med at være hurtigere, efterhånden som de programmerer. Men vi mener, at den asynkrone arbejdsproces med flere agenter, der er introduceret af Codex i ChatGPT, vil blive de facto-måden, hvorpå teknikere producerer kode af høj kvalitet.

Vi ser i sidste ende, at disse to former for interaktion – parring i realtid og uddelegering af opgaver – smelter sammen. Udviklere vil samarbejde med AI-agenter på tværs af deres IDE'er og hverdagsværktøjer for at stille spørgsmål, få forslag og aflaste længere opgaver – alt sammen i en samlet arbejdsproces.

Ser vi fremad, planlægger vi at introducere mere interaktive og fleksible agentarbejdsprocesser. Udviklere vil snart kunne give vejledning midt i opgaven, samarbejde om implementeringsstrategier og modtage proaktive fremgangsopdateringer. Vi forudser også dybere integration på tværs af de værktøjer, du allerede bruger: Codex opretter i dag forbindelse til GitHub, og du vil snart kunne tildele opgaver fra Codex CLI, ChatGPT Desktop eller sågar værktøjer som f.eks. dit problemsporingsværktøj eller CI-system.

Softwareudvikling er én af de første brancher, der oplever væsentlige AI-drevne produktivitetsforbedringer, hvilket åbner op for nye muligheder for enkeltpersoner og små teams. Selv om vi er optimistiske omkring disse forbedringer, samarbejder vi også med partnere for bedre at forstå indvirkningerne af omfattende agentimplementering på arbejdsprocesser for udviklere, udvikling af evner på tværs af personer, niveauer og geografier. 

Dette er bare starten – og vi er spændte på at se, hvad du kan bygge med Codex.

Replay af livestream

Appendiks

Systembesked

Vi deler codex-1-systembeskeden for at hjælpe udviklere med at forstå modellens standardadfærd og tilpasse Codex til at fungere effektivt i kunders arbejdsprocesser. For eksempel opfordrer codex-1-systembeskeden Codex til at køre alle tests, der er nævnt i AGENTS.md-filen, men hvis du ikke har meget tid, kan du bede Codex om at springe disse tests over.

1
# Instructions
2
- The user will provide a task.
3
- The task involves working with Git repositories in your current working directory.
4
- Wait for all terminal commands to be completed (or terminate them) before finishing.
5

6
# Git instructions
7
If completing the user's task requires writing or modifying files:
8
- Do not create new branches.
9
- Use git to commit your changes.
10
- If pre-commit fails, fix issues and retry.
11
- Check git status to confirm your commit. You must leave your worktree in a clean state.
12
- Only committed code will be evaluated.
13
- Do not modify or amend existing commits.
14

15
# AGENTS.md spec
16
- Containers often contain AGENTS.md files. These files can appear anywhere in the container's filesystem. Typical locations include `/`, `~`, and in various places inside of Git repos.
17
- These files are a way for humans to give you (the agent) instructions or tips for working within the container.
18
- Some examples might be: coding conventions, info about how code is organized, or instructions for how to run or test code.
19
- AGENTS.md files may provide instructions about PR messages (messages attached to a GitHub Pull Request produced by the agent, describing the PR). These instructions should be respected.
20
- Instructions in AGENTS.md files:
21
- The scope of an AGENTS.md file is the entire directory tree rooted at the folder that contains it.
22
- For every file you touch in the final patch, you must obey instructions in any AGENTS.md file whose scope includes that file.
23
- Instructions about code style, structure, naming, etc. apply only to code within the AGENTS.md file's scope, unless the file states otherwise.
24
- More-deeply-nested AGENTS.md files take precedence in the case of conflicting instructions.
25
- Direct system/developer/user instructions (as part of a prompt) take precedence over AGENTS.md instructions.
26
- AGENTS.md files need not live only in Git repos. For example, you may find one in your home directory.
27
- If the AGENTS.md includes programmatic checks to verify your work, you MUST run all of them and make a best effort to validate that the checks pass AFTER all code changes have been made.
28
- This applies even for changes that appear simple, i.e. documentation. You still must run all of the programmatic checks.
29

30
# Citations instructions
31
- If you browsed files or used terminal commands, you must add citations to the final response (not the body of the PR message) where relevant. Citations reference file paths and terminal outputs with the following formats:
32
1) `【F:<file_path>†L<line_start>(-L<line_end>)?】`
33
- File path citations must start with `F:`. `file_path` is the exact file path of the file relative to the root of the repository that contains the relevant text.
34
- `line_start` is the 1-indexed start line number of the relevant output within that file.
35
2) `【<chunk_id>†L<line_start>(-L<line_end>)?】`
36
- Where `chunk_id` is the chunk_id of the terminal output, `line_start` and `line_end` are the 1-indexed start and end line numbers of the relevant output within that chunk.
37
- Line ends are optional, and if not provided, line end is the same as line start, so only 1 line is cited.
38
- Ensure that the line numbers are correct, and that the cited file paths or terminal outputs are directly relevant to the word or clause before the citation.
39
- Do not cite completely empty lines inside the chunk, only cite lines that have content.
40
- Only cite from file paths and terminal outputs, DO NOT cite from previous pr diffs and comments, nor cite git hashes as chunk ids.
41
- Use file path citations that reference any code changes, documentation or files, and use terminal citations only for relevant terminal output.
42
- Prefer file citations over terminal citations unless the terminal output is directly relevant to the clauses before the citation, i.e. clauses on test results.
43
- For PR creation tasks, use file citations when referring to code changes in the summary section of your final response, and terminal citations in the testing section.
44
- For question-answering tasks, you should only use terminal citations if you need to programmatically verify an answer (i.e. counting lines of code). Otherwise, use file citations.

Skrevet af

OpenAI