mgokg's picture
Update app.py
544fb6a verified
raw
history blame
1.28 kB
import base64
import os
from google import genai
from google.genai import types
import gradio as gr
from IPython.display import display
from IPython.display import Markdown
client = genai.Client(
api_key=os.environ.get("GEMINI_API_KEY"),
)
def generate(prompt, *args):
model = "gemini-2.0-flash"
contents = [
types.Content(
role="user",
parts=[
types.Part.from_text(text=f"{prompt}"),
],
),
]
tools = [
types.Tool(google_search=types.GoogleSearch())
]
generate_content_config = types.GenerateContentConfig(
temperature=0.35,
top_p=0.95,
top_k=40,
max_output_tokens=8192,
tools=tools,
response_mime_type="text/plain",
)
response = ""
for chunk in client.models.generate_content_stream(
model=model,
contents=contents,
config=generate_content_config,
):
response += chunk.text
display(Markdown(response))
return response
if __name__ == "__main__":
iface = gr.ChatInterface(
fn=generate,
title=gr.Markdown("# Chatbot with Google Search"),
description="A chatbot powered by Gemini 2.0 Flash and Google Search.",
)
iface.launch()