mCodeGPT / app.py
paopaoka3325's picture
add requiretment
f3c489d
raw
history blame
2.35 kB
import gradio as gr
import subprocess
def greet(name1, name2, name3, name4):
# Storing each input in a variable, you can process or save them as you like
str1 = name1
str2 = name2
str3 = name3
str4 = name4
with open('abstractsave.txt', 'w') as f:
f.write(name4)
def run_command(command):
result = subprocess.run(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
output_string = result.stdout
error_string = result.stderr
return output_string, error_string
###### output_string1, error_string1= run_command("pip install optogpt")
output_string1, error_string1=run_command("curl -sSL https://install.python-poetry.org | python3 -")
output_string2, error_string2= run_command(f"poetry run runoak set-apikey -e openai {str1}")
run_command(f"poetry run runoak set-apikey -e bioportal {str2}")
run_command(f"poetry run runoak set-apikey -e hfhub-key {str3}")
# output = run_command(f"ontogpt extract -t gocam.GoCamAnnotations -i ./abstract.txt")
output = run_command(f"ontogpt extract -t gocam.GoCamAnnotations -i ./abstractsave.txt")
# output_string1, error_string1=run_command("poetry")# ontogpt")
import subprocess
def get_package_location(package_name):
try:
result = subprocess.check_output(["pip", "show", package_name], text=True)
for line in result.splitlines():
if line.startswith("Location:"):
return line.split(":")[1].strip()
except:
return None
package_name = "ontogpt" # Replace this with any package name
location = get_package_location(package_name)
# return location
# For the purpose of this example, I'm just returning the values concatenated
return f"Inputs received: {str1}, {str2}, {str3}, {str4}, '--------------', {location}, '--------------', {output_string1},{error_string1},{output_string2},{error_string2},{output}"
# Define 5 text input boxes with labels
input_boxes = [
gr.inputs.Textbox(label="openai api key"),
gr.inputs.Textbox(label="bioportal api key"),
gr.inputs.Textbox(label="HuggingFace Hub api key"),
gr.inputs.Textbox(label="Input data"),
]
iface = gr.Interface(fn=greet, inputs=input_boxes, outputs="text")
iface.launch()