Spaces:
Sleeping
Sleeping
File size: 1,312 Bytes
22c2f09 f573ae2 cc14e70 9d18ad9 f573ae2 9d18ad9 cc14e70 9d18ad9 cc14e70 f573ae2 486dd28 cc14e70 486dd28 f573ae2 22c2f09 f573ae2 22c2f09 | 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 31 32 33 34 35 36 37 38 39 40 41 | import gradio as gr
from openai import OpenAI
import tiktoken
# Set your OpenAI API key
openai = OpenAI(api_key='sk-proj-VbcCZjqEbB0ah7tKm37wT3BlbkFJbLfFYNDdbR8hiKXhTMIB')
def count_tokens(messages):
encoding = tiktoken.encoding_for_model("gpt-3.5-turbo")
num_tokens = 0
for message in messages:
num_tokens += len(encoding.encode(message["content"]))
return num_tokens
def chatgpt(prompt):
messages = [
{
"role": "system",
"content": (
"You are an AI assistant for a soldier. "
"Do not share personal information. "
"Provide survival tips, medical responses, and identify threats based on camera input. "
"Keep responses short to save tokens."
)
},
{"role": "user", "content": prompt},
]
token_usage = count_tokens(messages)
print(f"Token usage: {token_usage} tokens")
response = openai.chat.completions.create(
model="gpt-3.5-turbo",
messages=messages,
max_tokens=50 # Limit the number of tokens in the response
)
return response.choices[0].message.content
iface = gr.Interface(fn=chatgpt, inputs="text", outputs="text", title="ShadowWatch001")
iface.launch()
|