| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| | import os
|
| | import requests
|
| | import gradio as gr
|
| | from dotenv import load_dotenv
|
| |
|
| |
|
| | load_dotenv()
|
| |
|
| |
|
| | groq_api_key = os.environ.get("GROQ_API_KEY")
|
| |
|
| |
|
| | if groq_api_key is None:
|
| | raise ValueError("Groq API key is not set in environment variables.")
|
| |
|
| |
|
| | url = "https://api.groq.com/openai/v1/chat/completions"
|
| |
|
| |
|
| | def groq_chat(prompt):
|
| | headers = {
|
| | "Authorization": f"Bearer {groq_api_key}"
|
| | }
|
| | body = {
|
| | "model": "llama-3.1-8b-instant",
|
| | "messages": [
|
| | {
|
| | "role": "user",
|
| | "content": prompt
|
| | }
|
| | ]
|
| | }
|
| |
|
| |
|
| | response = requests.post(url, headers=headers, json=body)
|
| |
|
| | if response.status_code == 200:
|
| |
|
| | return response.json().get('choices', [{}])[0].get('message', {}).get('content', "No response found.")
|
| | else:
|
| |
|
| | return f"Error {response.status_code}: {response.text}"
|
| |
|
| |
|
| | with gr.Blocks() as interface:
|
| | gr.Markdown("# DDS 1st Chatbot")
|
| | with gr.Row():
|
| | user_input = gr.Textbox(label="Enter your prompt", placeholder="Type something funny or interesting...")
|
| | with gr.Row():
|
| | output = gr.Textbox(label="Response from Groq API")
|
| | with gr.Row():
|
| | submit_button = gr.Button("Get Response")
|
| |
|
| | submit_button.click(fn=groq_chat, inputs=user_input, outputs=output)
|
| |
|
| |
|
| | if __name__ == "__main__":
|
| | interface.launch(share=True) |