ARP3 / app.py
ZeeAI1's picture
Update app.py
3200f7a verified
import streamlit as st
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
import os
st.title("AI Accountant - Prompt-Based ERP Entry")
model_path = "google/flan-t5-large"
# Check if tokenizer files exist β†’ if not, download them
required_files = ["tokenizer_config.json", "special_tokens_map.json", "spiece.model"]
missing_files = [f for f in required_files if not os.path.exists(os.path.join(model_path, f))]
if missing_files:
st.info("Tokenizer files missing. Downloading tokenizer from base model...")
tokenizer_dl = AutoTokenizer.from_pretrained("google/flan-t5-large")
tokenizer_dl.save_pretrained(model_path)
st.success("Tokenizer files downloaded.")
tokenizer = AutoTokenizer.from_pretrained(model_path, local_files_only=True)
model = AutoModelForSeq2SeqLM.from_pretrained(model_path, local_files_only=True)
user_input = st.text_area("Enter accounting transaction:")
if st.button("Generate Entry"):
inputs = tokenizer(user_input, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=128)
result = tokenizer.decode(outputs[0], skip_special_tokens=True)
st.json(eval(result)) # Convert JSON string to dict