Spaces:
Runtime error
Runtime error
# -* coding:UTF-8 -* | |
# !/usr/bin/env python | |
import numpy as np | |
import gradio as gr | |
import os | |
from PIL import Image | |
from codeinterpreterapi import CodeInterpreterSession | |
def codeinterpreter(openai_key,prompt, files): | |
fileList = [] | |
if files != None: | |
for idx, file in enumerate(files): | |
fileList.append(file) | |
if openai_key == "": | |
return ['openai key must set!',None] | |
with CodeInterpreterSession(model="gpt-3.5-turbo",openai_api_key=openai_key) as session: | |
#async with CodeInterpreterSession(model="gpt-3.5-turbo",openai_api_key="") as session: | |
response = session.generate_response_sync(prompt, fileList,True) | |
images = [] | |
for _file in response.files: | |
images.append(_file.get_image()) | |
return [response.content,images] | |
with gr.Blocks() as app: | |
with gr.Row(): | |
with gr.Column(): | |
inp1=gr.Textbox(label="openai_key") | |
inp2=gr.Textbox(label="prompt",info="input the prompt") | |
inp3=gr.Files() | |
with gr.Column(): | |
out1=gr.Textbox(label="result") | |
out2=gr.Gallery() | |
btn = gr.Button(value="Mirror Image") | |
gr.Examples([["Plot the nvidea stock vs microsoft stock over the last 6 months."], | |
["Plot a sin wave and show it to me."], | |
["贵州茅台最近半年走势"], | |
["Plot the bitcoin chart of 2023 YTD"]], | |
[inp2]) | |
btn.click(codeinterpreter, inputs=[inp1,inp2,inp3], outputs=[out1,out2]) | |
# app = gr.Interface( | |
# fn=codeinterpreter, | |
# inputs=[inp1,inp2,inp3], | |
# outputs=["text","gallery"], | |
# examples=[["","Plot the nvidea stock vs microsoft stock over the last 6 months.",None], | |
# ["","Plot a sin wave and show it to me.",None], | |
# ["","怡亚通最近半年走势",None], | |
# ["","Plot the bitcoin chart of 2023 YTD",None]] | |
# ) | |
app.launch() |