File size: 997 Bytes
4c23a14 8d6f5ea 4c23a14 8ff65e4 4c23a14 2de2983 8d6f5ea 4c23a14 8d6f5ea 4c23a14 8d6f5ea 4c23a14 8d6f5ea 4c23a14 8ff65e4 4c23a14 8ff65e4 |
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 |
import os
import gradio as gr
import sqlite3
from dotenv import load_dotenv
import openai
from utils import generate_double_entry, save_transaction
# Load key from Hugging Face secret or .env
load_dotenv()
openai.api_key = os.getenv(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)
openai.api_base = "https://api.groq.com/openai/v1"
def call_groq(prompt):
response = openai.ChatCompletion.create(
model="mixtral-8x7b-instruct",
messages=[{"role": "user", "content": prompt}]
)
return response['choices'][0]['message']['content']
def accounting_chatbot(user_input):
llm_output = call_groq(user_input)
debit, credit, amount = generate_double_entry(llm_output)
save_transaction(debit, credit, amount, user_input)
output = f"**Double Entry**\\n- Debit: {debit}\\n- Credit: {credit}\\n- Amount: {amount}\\n\\n🧠 {llm_output}"
return output
demo = gr.ChatInterface(fn=accounting_chatbot, title="AI Accounting Assistant")
demo.launch()
|