File size: 992 Bytes
7aa6874
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import gradio as gr
import os, threading

from multi_agent import run_multi_agent

lock = threading.Lock()

LLM_WHITE = "gpt-4o"
LLM_BLACK = "gpt-4o"

def invoke(openai_api_key, num_moves = 10):
    if (openai_api_key == ""):
        raise gr.Error("OpenAI API Key is required.")

    with lock:
        os.environ["OPENAI_API_KEY"] = openai_api_key
        result = run_multi_agent(LLM_WHITE, LLM_BLACK, num_moves)
        del os.environ["OPENAI_API_KEY"]
        return result

gr.close_all()

demo = gr.Interface(fn = invoke, 
                    inputs = [gr.Textbox(label = "OpenAI API Key", type = "password", lines = 1),
                              gr.Number(label = "Number of Moves", value = 10, minimum = 1, maximum = 25)],
                    outputs = [gr.Markdown(label = "Game", value=os.environ["OUTPUT"], line_breaks=True, sanitize_html=False)],
                    title = "Multi-Agent AI: Chess",
                    description = os.environ["DESCRIPTION"])

demo.launch()