import gradio as gr import os from groq import Groq # Initialize Groq api_key = os.getenv("GROQ_API_KEY", "") if not api_key: gr.Warning("GROQ_API_KEY not set!") client = Groq(api_key=api_key) def classify_support(msg): """Classify Whop support messages""" try: resp = client.messages.create( model="llama-3.3-70b-versatile", max_tokens=200, system="Classify this Whop customer message as: Billing, Technical, Feature Request, Positive, or Negative. Respond in JSON.", messages=[{"role": "user", "content": msg}] ) return resp.content[0].text except Exception as e: return f"Error: {str(e)}" def tag_post(post): """Tag social media posts""" try: resp = client.messages.create( model="llama-3.3-70b-versatile", max_tokens=200, system="Tag this social post as: Educational, Motivational, Product, Behind-the-scenes, or Community. Respond in JSON.", messages=[{"role": "user", "content": post}] ) return resp.content[0].text except Exception as e: return f"Error: {str(e)}" with gr.Blocks() as demo: gr.Markdown("# 🎯 Ting's Content Classifier") with gr.Tabs(): with gr.TabItem("🛍️ Support Classifier"): inp = gr.Textbox(label="Message", lines=3) btn = gr.Button("Classify") out = gr.Textbox(label="Result", lines=3) btn.click(classify_support, inp, out) with gr.TabItem("📱 Post Tagger"): inp2 = gr.Textbox(label="Post", lines=4) btn2 = gr.Button("Tag") out2 = gr.Textbox(label="Tags", lines=3) btn2.click(tag_post, inp2, out2) if __name__ == "__main__": demo.launch()