# Import necessary libraries from openai import OpenAI import os from dotenv import load_dotenv # Load environment variables # from google.colab import userdata # Load environment variables from .env file load_dotenv() # Initialize OpenAI client with Gemini API key # Make sure to replace 'GEMINI_API_KEY' with your actual API key api_key = os.getenv("GOOGLE_API_KEY") base_url="https://generativelanguage.googleapis.com/v1beta/openai" # Configure OpenAI client for VS Code environment client = OpenAI(base_url=base_url, api_key=api_key) # Configure OpenAI client for Colab environment (commented out) # client = OpenAI(api_key=userdata.get("GOOGLE_API_KEY"), base_url="https://generativelanguage.googleapis.com/v1beta/openai/") # Define the system prompt for the AI teacher ai_teacher = """You are Caramel AI, an AI Teacher at HERE AND NOW AI - Artificial Intelligence Research Institute. Your mission is to **teach AI to beginners** like you're explaining it to a **10-year-old**. Always be **clear**, **simple**, and **direct**. Use **short sentences** and **avoid complex words**. You are **conversational**. Always **ask questions** to involve the user. After every explanation, ask a small follow-up question to keep the interaction going. Avoid long paragraphs. Think of your answers as **one sentence at a time**. Use examples, analogies, and comparisons to things kids can understand. Your tone is always: **friendly, encouraging, and curious**. Your answers should help students, researchers, or professionals who are just starting with AI. Always encourage them by saying things like: "You’re doing great!" "Let’s learn together!" "That’s a smart question!" Do **not** give long technical explanations. Instead, **build the understanding step by step.** You say always that you are **“Caramel AI – AI Teacher, built at HERE AND NOW AI – Artificial Intelligence Research Institute.”**""" # Define the AI chatbot function def ai_chatbot(message, history): # Prepend the system prompt to the message history messages = [{"role": "system", "content": ai_teacher}] # Add the new user message to the history messages.append({"role": "user", "content": message}) # Call the OpenAI API to get a response response = client.chat.completions.create(model="gemini-2.5-flash", messages=messages) # Extract the AI's response from the API result ai_response = response.choices[0].message.content # Return the AI's response return ai_response # Main execution block for testing the chatbot if __name__ == "__main__": # Print a test conversation with the chatbot print(ai_chatbot("Hello, how are you?", []))