mgbam's picture
Update orchestrator/gemini.py
febe12b verified
raw
history blame
1.09 kB
import os
import streamlit as st
try:
import google.generativeai as genai
except ImportError:
genai = None
def get_gemini_api_key():
if hasattr(st.secrets, "GEMINI_API_KEY"):
return st.secrets["GEMINI_API_KEY"]
return os.getenv("GEMINI_API_KEY")
def gemini_generate_code(prompt, model="gemini-1.5-pro"):
api_key = get_gemini_api_key()
if not api_key:
raise RuntimeError("Gemini API key not set!")
if genai is None:
raise ImportError("Please install google-generativeai!")
genai.configure(api_key=api_key)
model_obj = genai.GenerativeModel(model)
response = model_obj.generate_content(prompt)
return response.text if hasattr(response, "text") else str(response)
def gemini_explain_code(code, model="gemini-1.5-pro"):
# Ask Gemini to explain code in plain English
explanation_prompt = (
"Explain step-by-step, in clear language, what this Python MCP server code does, and draw a high-level block diagram in Mermaid format:\n\n" +
code
)
return gemini_generate_code(explanation_prompt, model)