import openai import gradio as gr import os openai.api_key = os.getenv("OPENAI_API_KEY") def CustomChatGPT(category, user_input): messages = [{"role": "system", "content": "You are an expert in Technical Support and Customer Service that specializes in New Mexico Cannabis Regulatory Compliance and training people how to use software called BioTrack"}] user_input = f"In the context of {category} specifically and using your expertise and knowledge of cannabis regulations in New Mexico and BioTrack, " + user_input messages.append({"role": "user", "content": user_input}) response = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=messages ) ChatGPT_reply = response.choices[0].message["content"] return ChatGPT_reply iface = gr.Interface( fn=CustomChatGPT, inputs=[gr.inputs.Dropdown(choices=['BioTrack', 'Regulations', 'Best Practices', 'General Question'], label='Category'), gr.inputs.Textbox(lines=1, placeholder='Type here...', label='Your Question')], outputs=gr.outputs.Textbox(label='AI Response'), title="CannaAssist AI Assistant", description="Welcome to the CannaAssist AI Assistant. This tool is designed to provide expert guidance on BioTrack and cannabis regulations in New Mexico. DISCLAIMER: This is a proof of concept and not an official product.", examples=[ ["BioTrack", "How to add wholesale flower into my inventory?"], ["BioTrack", "How do I update inventory quantities in BioTrack?"], ["Regulations", "How much cannabis can I buy in New Mexico?"], ["Regulations", "What are the packaging requirements for cannabis products in New Mexico?"], ["Best Practices", "What are the best practices for managing inventory?"], ["Best Practices", "How can I improve my dispensary's customer service?"], ["General Question", "How to increase sales for my dispensary?"], ["General Question", "What are the benefits of offering delivery service for my dispensary?"], ["General Question", "What are the key trends in the cannabis industry?"], ["General Question", "What is the impact of customer loyalty programs in the cannabis industry?"] ], theme=gr.themes.Monochrome() ) iface.launch()