Google Gen AI Python SDK: A Full Information


Generative AI fashions are altering how we create content material, whether or not it’s textual content, photographs, video, or code. With Google’s Gen AI Python SDK, now you can entry and work together with Google’s generative AI fashions in your Python functions extra simply, along with utilizing the Gemini Developer API and Vertex AI APIs. Which means builders can extra readily create functions, together with chatbots, content material mills, or inventive instruments. On this article, we’ll cowl every part it is advisable know to get began utilizing the Google Gen AI Python SDK.

Additionally learn: Construct an LLM Mannequin utilizing Google Gemini API

What’s the Google Gen AI Python SDK?

The Google Gen AI Python SDK is a consumer library for builders to make use of Google’s generative AI skills simply utilizing Python. It offers:

  • Assist for Gemini Developer API (Google’s superior textual content and multimodal generative fashions)
  • Integration with Vertex AI APIs for enterprise-scale AI workloads
  • Assist for producing textual content, photographs, movies, embeddings, chat conversations, and extra
  • Instruments for file administration, caching, and async assist
  • Superior perform calling and schema enforcement options

This SDK additionally abstracts a lot of the complexity round API calls and means that you can deal with constructing AI-powered functions.

Set up

Putting in the SDK is straightforward. Run:

pip set up google-genai

The above command will set up the Google Gen AI Python SDK bundle utilizing pip. This command downloads every part you want for the Python surroundings to begin up the Google generative AI companies, together with the sources and all dependencies.

Imports and Consumer Setup

After getting put in the SDK, create a Python file and import the SDK:

from google import genai
from google.genai import varieties

The SDK has two modules – genai and kinds. The genai module creates a consumer used for API interplay, whereas the kinds module has knowledge constructions and lessons that function helpers used to construct requests and configure request parameters.

You’ll create an occasion of the consumer for every interplay with the Google generative AI fashions. You’ll instantiate the consumer with totally different strategies relying on the API you’re utilizing.

For the Gemini Developer API, you possibly can instantiate the consumer by passing alongside your API key:

consumer = genai.Consumer(api_key='YOUR_GEMINI_API_KEY')

You instantiate the consumer you possibly can work together with the Gemini Developer API by passing in your API key. This consumer will deal with the entry token and request administration.

Non-obligatory: Utilizing Google Cloud Vertex AI

consumer = genai.Consumer(
   vertexai=True,
   mission="your-project-id",
   location='us-central1'
)

If you’re going to use Google Cloud Vertex AI, you’ll initialise the consumer in a different way by specifying the mission ID and the situation.

Notice: Utilizing Vertex AI is elective. You’ll be able to create your mission ID right here.

If you don’t use Vertex AI, you possibly can merely use the API key technique above.

API Model and Configuration

By default, the SDK makes use of beta endpoints to entry beta options. Nevertheless, if you wish to use steady APIs, you possibly can specify the API model utilizing the http_options argument:

from google.genai import varieties

consumer = genai.Consumer(
   vertexai=True,
   mission="your-project-id",
   location='us-central1',
   http_options=varieties.HttpOptions(api_version='v1')
)

It’s as much as you ways you need to proceed to steadiness stability with cutting-edge options.

Utilizing Setting Variables (Non-obligatory)

As an alternative of straight passing keys, we should always first set surroundings variables:

Gemini Developer API:

export GEMINI_API_KEY='your-api-key'

Vertex AI:

export GOOGLE_GENAI_USE_VERTEXAI=true
export GOOGLE_CLOUD_PROJECT='your-project-id'
export GOOGLE_CLOUD_LOCATION='us-central1'

Then, initialize the consumer merely with:

consumer = genai.Consumer()

Google Gen AI Python SDK Use Instances

Listed below are the assorted methods you possibly can put Google Gen AI Python SDK’s capabilities to make use of as soon as arrange.

Content material Era

The first perform of the SDK is to generate AI content material. You present prompts in numerous varieties, akin to easy strings, structured content material, or advanced multimodal inputs.

Fundamental Textual content Era

response = consumer.fashions.generate_content(
   mannequin="gemini-2.0-flash-001",
   contents="Why Does the solar rises from east"
)
print(response.textual content)

Output

This sends a immediate to the mannequin and returns the generated reply.

Structured Content material Inputs

You’ll be able to insert structured content material throughout numerous roles, like consumer or mannequin for chatbot, conversational, or multi-turn contexts.

from google.genai import varieties


content material = varieties.Content material(
   function="consumer",
   components=[types.Part.from_text(text="Tell me a fun fact about work.")]
)
response = consumer.fashions.generate_content(mannequin="gemini-2.0-flash-001", contents=content material)
print(response.textual content)

Output

Google Gen AI - Structured Content Output

The SDK internally interprets many various enter varieties to a structured knowledge format for the mannequin.

File Add and Utilization

The Gemini Builders API means that you can add information for the mannequin to course of. That is nice for summarization, or content material extraction:

file = consumer.information.add(file="/content material/sample_file.txt")
response = consumer.fashions.generate_content(
   mannequin="gemini-2.0-flash-001",
   contents=[file, 'Please summarize this file.']
)
print(response.textual content)

Output

Google Gen AI - File Upload and Usage

This is a perfect strategy for including AI performance to document-based duties.

Operate Calling

A novel functionality is the power to move Python capabilities as “instruments” for the mannequin to invoke mechanically whereas producing the completion.

def get_current_weather(location: str) -> str:
   return 'sunny'


response = consumer.fashions.generate_content(
   mannequin="gemini-2.0-flash-001",
   contents="What's the climate like in Ranchi?",
   config=varieties.GenerateContentConfig(instruments=[get_current_weather])
)
print(response.textual content)

Output

Google Gen AI - Function Calling

This allows dynamic, real-time knowledge integration inside AI responses.

Superior Configuration

You’ve the power to customise technology with parameters akin to temperature, max_output_tokens, and security settings to handle randomness, size, and filter dangerous content material.

config = varieties.GenerateContentConfig(
   temperature=0.3,
   max_output_tokens=100,
   safety_settings=[types.SafetySetting(category='HARM_CATEGORY_HATE_SPEECH', threshold='BLOCK_ONLY_HIGH')]
)


response = consumer.fashions.generate_content(
   mannequin="gemini-2.0-flash-001",
   contents=""'Supply some encouraging phrases for somebody beginning a brand new journey.''',
   config=config
)
print(response.textual content)

Output

Google Gen AI - Advanced Configuration

This may present granularity over content material high quality and security.

Multimedia Assist: Pictures and Movies

The SDK means that you can generate and edit photographs and generate movies (in preview).

  • Generate photographs utilizing textual content prompts.
  • Upscale or alter photographs generated.
  • Generate movies from textual content or photographs.

Instance of Picture Era:

response = consumer.fashions.generate_images(
   mannequin="imagen-3.0-generate-002",
   immediate="A tranquil seashore with crystal-clear water and colourful seashells on the shore.",
   config=varieties.GenerateImagesConfig(number_of_images=1)
)
response.generated_images[0].picture.present()

Output

Google Gen AI Image Output

Instance of Video Era:

import time
operation = consumer.fashions.generate_videos(
   mannequin="veo-2.0-generate-001",
   immediate="A cat DJ spinning vinyl data at a futuristic nightclub with holographic beats.",
   config=varieties.GenerateVideosConfig(number_of_videos=1, duration_seconds=5)
)


whereas not operation.performed:
   time.sleep(20)
   operation = consumer.operations.get(operation)
video = operation.response.generated_videos[0].video
video.present()

Output:

This permits for inventive, multimodal AI apps.

Chat and Conversations

You can begin chat periods that protect context all through your messages:

chat = consumer.chats.create(mannequin="gemini-2.0-flash-001")
response = chat.send_message('Inform me a narrative')
print(response.textual content)
Google Gen AI - Chats and Conversations
response = chat.send_message('Summarize that story in a single sentence')
print(response.textual content)
Google Gen AI - Chats and Conversations

That is helpful for creating conversational AI that remembers earlier dialogue.

Asynchronous Assist

All most important API strategies have async capabilities for higher integration into async Python apps:

response = await consumer.aio.fashions.generate_content(
   mannequin="gemini-2.0-flash-001",
   contents="Inform a Horror story in 200 phrases."
)
print(response.textual content)
Google Gen AI - Asynchronous Support

Token Counting

Token counting tracks what number of tokens (items of textual content) are in your enter. This helps you keep inside mannequin limits and make cost-effective choices.

token_count = consumer.fashions.count_tokens(
   mannequin="gemini-2.0-flash-001",
   contents="Why does the sky have a blue hue as a substitute of different colours?"
)
print(token_count)
Google Gen AI - Token Counting

Embeddings

Embeddings flip your textual content into numeric vectors that symbolize its which means, which can be utilized for search, clustering, and AI analysis.

embedding = consumer.fashions.embed_content(
   mannequin="text-embedding-004",
   contents="Why does the sky have a blue hue as a substitute of different colours?"
)
print(embedding)
Google Gen AI - Embeddings

Utilizing the SDK, you possibly can simply depend tokens and make embeddings to enhance and improve your AI functions.

Conclusion

The Google Gen AI Python SDK is a sturdy, versatile instrument that enables builders to entry Google’s high generative AI fashions of their Python tasks. From textual content technology, chat, and chatbot, to picture/video technology, perform calling, and rather more it offers a sturdy function set with easy interfaces. With a simple bundle set up, easy consumer configuration course of, and assist for async programming and multimedia, the SDK makes constructing functions that leverage AI considerably simpler. Whether or not you’re a newbie or seasoned developer, utilizing the SDK is comparatively painless however highly effective with regards to incorporating generative AI into your workflows.

Continuously Requested Questions

What’s the Google Gen AI Python SDK?

It’s a Python library for utilizing Google’s Gen AI companies and fashions in Python code

How do I set up the SDK?

You run pip set up google-genai. If you wish to use the SDK asynchronously, run pip set up google-genai[aiohttp].

How do I authenticate the consumer?

On consumer creation, you possibly can move in an API Key or set the surroundings variables GEMINI_API_KEY or set Google Cloud credentials for Vertex AI.

Does the SDK use multimedia?

Sure, the SDK can carry out operations the place photographs and information are involved, add and edit them, and use them in structured content material.

What inputs can I exploit for generate_content?

generate_content takes plain strings, lists of messages, structured prompts the place you assign roles, and multipart content material (textual content together with photographs or information).

What’s perform calling?

The perform calling function permits the mannequin to name Python capabilities dynamically through the session. Subsequently, permitting you to have a workflow that calls exterior logic or computing.

Can I configure the behaviour of the fashions?

Sure, on generate_content, you need to use the generation_config parameter with arguments akin to temperature (to regulate randomness), and max_output_tokens (to restrict the mannequin response).

Hello, I’m Janvi, a passionate knowledge science fanatic at the moment working at Analytics Vidhya. My journey into the world of knowledge started with a deep curiosity about how we will extract significant insights from advanced datasets.

Login to proceed studying and revel in expert-curated content material.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles