File tree Expand file tree Collapse file tree 1 file changed +46
-0
lines changed Expand file tree Collapse file tree 1 file changed +46
-0
lines changed Original file line number Diff line number Diff line change 1+ import os
2+
3+ from dotenv import load_dotenv
4+ from openai import OpenAI
5+
6+ from parea import Parea , trace
7+ from parea .schemas import Log
8+
9+ load_dotenv ()
10+
11+ client = OpenAI (api_key = os .environ .get ("OPENAI_API_KEY" ))
12+ p = Parea (api_key = os .getenv ("PAREA_API_KEY" ))
13+ p .wrap_openai_client (client )
14+
15+
16+ def eval_func (log : Log ) -> float :
17+ from random import random
18+ from time import sleep
19+
20+ sleep (random () * 10 )
21+ return random ()
22+
23+
24+ @trace (eval_funcs = [eval_func ])
25+ def func (lang : str , framework : str ) -> str :
26+ return (
27+ client .chat .completions .create (
28+ model = "gpt-4-turbo" ,
29+ messages = [
30+ {
31+ "role" : "user" ,
32+ "content" : f"Write a hello world program in { lang } using { framework } " ,
33+ }
34+ ],
35+ )
36+ .choices [0 ]
37+ .message .content
38+ )
39+
40+
41+ if __name__ == "__main__" :
42+ p .experiment (
43+ name = "hello-world-example" ,
44+ data = [{"lang" : "Python" , "framework" : "Flask" }],
45+ func = func ,
46+ ).run ()
You can’t perform that action at this time.
0 commit comments