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()