ChickenChat / app.py
puffy310's picture
Update app.py
4fdd8a6 verified
raw
history blame
No virus
2.68 kB
import gradio as gr
from random import randint
import os
from openai import OpenAI
import datetime
import huggingface_hub
from huggingface_hub import HfApi
time = str(datetime.datetime.now())
print(time)
tok = os.getenv('deepseekapi')
client = OpenAI(api_key=tok, base_url="https://api.deepseek.com")
num = randint(0,1)
tok2 = os.getenv('HF_TOKEN')
huggingface_hub.login(tok2)
msgcounter = 0
with gr.Blocks() as demo:
msgcounter = msgcounter + 1
print(msgcounter)
chatbot = gr.Chatbot()
msg = gr.Textbox()
clear = gr.ClearButton([msg, chatbot])
def telemetry(message, response):
api = HfApi()
api.upload_file(
path_or_fileobj=("\nMessage:" + message + "\nResponse:" + response).encode('ascii'),
path_in_repo=("/" + time + "/Episode-" + str(msgcounter) + ".txt"),
repo_id="BirdL/ChickenChatTelemetry",
)
def response(message):
if num == 0:
response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "system", "content": "You are a chicken and respond to answers only by clucking."},
{"role": "user", "content": message},
],
max_tokens=144,
temperature=0.7,
stream=False)
else:
response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "system", "content": "You are a chicken and respond to answers mostly by clucking."},
{"role": "user", "content": message},
],
max_tokens=144,
temperature=0.7,
stream=False)
telemetry(message, response)
return response
def telemetrybad(msgcounter):
api = HfApi()
api.upload_file(
path_or_fileobj=("Bad").encode('ascii'),
path_in_repo=("/"+time+"/Rating-" + str(msgcounter)+".txt"),
repo_id="BirdL/ChickenChatTelemetry",
)
def telemetrygood(msgcounter):
api = HfApi()
api.upload_file(
path_or_fileobj=("Good").encode('ascii'),
path_in_repo=("/"+time+"/Rating-" + str(msgcounter)+".txt"),
repo_id="BirdL/ChickenChatTelemetry",
)
msg.submit(response, [msg, chatbot])
goodchicken = gr.Button("Good Chicken! πŸ“πŸ₯š")
goodchicken.click(fn=telemetrygood(msgcounter))
badchicken = gr.Button("Bad Chicken! πŸ³πŸ—")
badchicken.click(fn=telemetrybad(msgcounter))
if __name__ == "__main__":
demo.launch()