11import re
22
3- import anthropic
3+ from openai import AsyncOpenAI
44
55from libkernelbot .consts import Language
66from libkernelbot .task import LeaderboardTask
@@ -15,7 +15,7 @@ async def generate_kernel(
1515 description : str ,
1616 templates : dict [str , str ],
1717) -> tuple [str , str ]:
18- """Generate kernel code from a natural language prompt using Claude .
18+ """Generate kernel code from a natural language prompt using OpenAI .
1919
2020 Args:
2121 prompt: The user's natural language description of the kernel to generate.
@@ -51,15 +51,17 @@ async def generate_kernel(
5151
5252 system_prompt = "\n \n " .join (system_parts )
5353
54- client = anthropic .AsyncAnthropic ()
55- response = await client .messages .create (
56- model = "claude-sonnet-4-20250514" ,
57- max_tokens = 4096 ,
58- system = system_prompt ,
59- messages = [{"role" : "user" , "content" : prompt }],
54+ client = AsyncOpenAI ()
55+ response = await client .chat .completions .create (
56+ model = "o3" ,
57+ max_completion_tokens = 4096 ,
58+ messages = [
59+ {"role" : "system" , "content" : system_prompt },
60+ {"role" : "user" , "content" : prompt },
61+ ],
6062 )
6163
62- raw = response .content [0 ].text
64+ raw = response .choices [0 ].message . content
6365
6466 # Extract code from a fenced code block if present
6567 match = re .search (r"```(?:\w+)?\n(.*?)```" , raw , re .DOTALL )
0 commit comments