Immagine dell'autore
Gemini è un nuovo modello sviluppato da Google e Bard sta diventando nuovamente utilizzabile. Con Gemini è ora possibile ottenere risposte quasi perfette alle tue domande fornendo loro immagini, audio e testo.
In questo tutorial impareremo a conoscere l'API Gemini e come configurarla sul tuo computer. Esploreremo anche varie funzioni dell'API Python, inclusa la generazione di testo e la comprensione delle immagini.
Gemini è un nuovo modello di intelligenza artificiale sviluppato attraverso la collaborazione tra i team di Google, tra cui Google Research e Google DeepMind. È stato costruito appositamente per essere multimodale, il che significa che può comprendere e funzionare con diversi tipi di dati come testo, codice, audio, immagini e video.
Gemini è il modello di intelligenza artificiale più avanzato e più grande sviluppato da Google fino ad oggi. È stato progettato per essere altamente flessibile in modo da poter funzionare in modo efficiente su un'ampia gamma di sistemi, dai data center ai dispositivi mobili. Ciò significa che ha il potenziale per rivoluzionare il modo in cui aziende e sviluppatori possono creare e scalare le applicazioni AI.
Ecco tre versioni del modello Gemini progettate per diversi casi d'uso:
- Gemelli Ultra: L'intelligenza artificiale più grande e avanzata in grado di eseguire compiti complessi.
- Gemelli Pro: Un modello equilibrato che offre buone prestazioni e scalabilità.
- Gemelli Nano: Più efficiente per i dispositivi mobili.
Immagine da Presentazione dei Gemelli
Gemini Ultra offre prestazioni all'avanguardia, superando le prestazioni di GPT-4 su diversi parametri. È il primo modello a superare gli esperti umani nel benchmark Massive Multitask Language Understanding, che mette alla prova la conoscenza del mondo e la risoluzione dei problemi in 57 argomenti diversi. Ciò mette in mostra le sue capacità avanzate di comprensione e risoluzione dei problemi.
Per utilizzare l'API, dobbiamo prima ottenere una chiave API che puoi da qui: https://ai.google.dev/tutorials/setup
Successivamente fai clic sul pulsante “Ottieni una chiave API” e quindi fai clic su “Crea chiave API nel nuovo progetto”.
Copia la chiave API e impostala come variabile di ambiente. Stiamo utilizzando Deepnote ed è abbastanza semplice per noi impostare la chiave con il nome "GEMINI_API_KEY". Basta andare all'integrazione, scorrere verso il basso e selezionare le variabili di ambiente.
Nel passaggio successivo, installeremo l'API Python utilizzando PIP:
pip install -q -U google-generativeai
Successivamente, imposteremo la chiave API su GenAI di Google e avvieremo l'istanza.
import google.generativeai as genai
import os
gemini_api_key = os.environ["GEMINI_API_KEY"]
genai.configure(api_key = gemini_api_key)
Dopo aver impostato la chiave API, utilizzare il modello Gemini Pro per generare contenuti è semplice. Fornisci un prompt alla funzione "generate_content" e visualizza l'output come Markdown.
from IPython.display import Markdown
model = genai.GenerativeModel('gemini-pro')
response = model.generate_content("Who is the GOAT in the NBA?")
Markdown(response.text)
Questo è sorprendente, ma non sono d'accordo con l'elenco. Tuttavia, capisco che è tutta una questione di preferenze personali.
Gemini può generare più risposte, chiamate candidate, per un singolo prompt. Puoi selezionare quello più adatto. Nel nostro caso, abbiamo avuto una sola risposta.
response.candidates
Chiediamogli di scrivere un semplice gioco in Python.
response = model.generate_content("Build a simple game in Python")
Markdown(response.text)
Il risultato è semplice e pertinente. La maggior parte dei LLM iniziano a spiegare il codice Python invece di scriverlo.
Puoi personalizzare la tua risposta utilizzando l'argomento "generazione_config". Limiteremo il conteggio dei candidati a 1, aggiungendo la parola d'ordine "spazio" e impostando il numero massimo di token e temperatura.
response = model.generate_content(
'Write a short story about aliens.',
generation_config=genai.types.GenerationConfig(
candidate_count=1,
stop_sequences=['space'],
max_output_tokens=200,
temperature=0.7)
)
Markdown(response.text)
Come puoi vedere, la risposta si è fermata prima della parola “spazio”. Sorprendente.
Puoi anche utilizzare l'argomento "stream" per trasmettere in streaming la risposta. È simile alle API Anthropic e OpenAI ma più veloce.
model = genai.GenerativeModel('gemini-pro')
response = model.generate_content("Write a Julia function for cleaning the data.", stream=True)
for chunk in response:
print(chunk.text)
In questa sezione caricheremo Masood Aslami foto e utilizzala per testare la multimodalità di Gemini Pro Vision.
Caricare le immagini nel `PIL` e visualizzarle.
import PIL.Image
img = PIL.Image.open('images/photo-1.jpg')
img
Abbiamo una foto di alta qualità dell'Arco di Rua Augusta.
Carichiamo il modello Gemini Pro Vision e forniamolo con l'immagine.
model = genai.GenerativeModel('gemini-pro-vision')
response = model.generate_content(img)
Markdown(response.text)
Il modello identificava accuratamente il palazzo e forniva ulteriori informazioni sulla sua storia e architettura.
Forniamo la stessa immagine al GPT-4 e chiediamogli informazioni sull'immagine. Entrambi i modelli hanno fornito risposte quasi simili. Ma mi piace di più la risposta GPT-4.
Ora forniremo il testo e l'immagine all'API. Abbiamo chiesto al modello di visione di scrivere un blog di viaggio utilizzando l'immagine come riferimento.
response = model.generate_content(["Write a travel blog post using the image as reference.", img])
Markdown(response.text)
Mi ha fornito un breve blog. Mi aspettavo un formato più lungo.
Rispetto al GPT-4, il modello Gemini Pro Vision ha faticato a generare un blog di lungo formato.
Possiamo impostare il modello per avere una sessione di chat avanti e indietro. In questo modo, il modello ricorda il contesto e la risposta utilizzando le conversazioni precedenti.
Nel nostro caso, abbiamo avviato la sessione di chat e chiesto alla modella di aiutarmi a iniziare con il gioco Dota 2.
model = genai.GenerativeModel('gemini-pro')
chat = model.start_chat(history=[])
chat.send_message("Can you please guide me on how to start playing Dota 2?")
chat.history
Come puoi vedere, l'oggetto `chat` salva la cronologia dell'utente e della modalità chat.
Possiamo anche visualizzarli in stile Markdown.
for message in chat.history:
display(Markdown(f'**{message.role}**: {message.parts[0].text}'))
Facciamo la domanda successiva.
chat.send_message("Which Dota 2 heroes should I start with?")
for message in chat.history:
display(Markdown(f'**{message.role}**: {message.parts[0].text}'))
Possiamo scorrere verso il basso e vedere l'intera sessione con il modello.
I modelli di incorporamento stanno diventando sempre più popolari per le applicazioni sensibili al contesto. Il modello Gemini embedding-001 consente di rappresentare parole, frasi o interi documenti come vettori densi che codificano il significato semantico. Questa rappresentazione vettoriale consente di confrontare facilmente la somiglianza tra diverse parti di testo confrontando i corrispondenti vettori di incorporamento.
Possiamo fornire il contenuto a "embed_content" e convertire il testo in incorporamenti. È così semplice.
output = genai.embed_content(
model="models/embedding-001",
content="Can you please guide me on how to start playing Dota 2?",
task_type="retrieval_document",
title="Embedding of Dota 2 question")
print(output['embedding'][0:10])
[0.060604308, -0.023885584, -0.007826327, -0.070592545, 0.021225851, 0.043229062, 0.06876691, 0.049298503, 0.039964676, 0.08291664]
Possiamo convertire più porzioni di testo in incorporamenti passando un elenco di stringhe all'argomento "contenuto".
output = genai.embed_content(
model="models/embedding-001",
content=[
"Can you please guide me on how to start playing Dota 2?",
"Which Dota 2 heroes should I start with?",
],
task_type="retrieval_document",
title="Embedding of Dota 2 question")
for emb in output['embedding']:
print(emb[:10])
[0.060604308, -0.023885584, -0.007826327, -0.070592545, 0.021225851, 0.043229062, 0.06876691, 0.049298503, 0.039964676, 0.08291664]
[0.04775657, -0.044990525, -0.014886052, -0.08473655, 0.04060122, 0.035374347, 0.031866882, 0.071754575, 0.042207796, 0.04577447]
Se hai problemi a riprodurre lo stesso risultato, dai un'occhiata al mio Area di lavoro delle note profonde.
Ci sono così tante funzioni avanzate che non abbiamo trattato in questo tutorial introduttivo. Puoi saperne di più sull'API Gemini andando su API Gemini: avvio rapido con Python.
In questo tutorial abbiamo imparato a conoscere Gemini e come accedere all'API Python per generare risposte. In particolare, abbiamo imparato a conoscere la generazione del testo, la comprensione visiva, lo streaming, la cronologia delle conversazioni, l'output personalizzato e gli incorporamenti. Tuttavia, questo è solo la superficie di ciò che i Gemelli possono fare.
Sentiti libero di condividere con me ciò che hai creato utilizzando l'API Gemini gratuita. Le possibilità sono illimitate.
Abid Ali Awan (@1abidaliawan) è un professionista di data scientist certificato che ama creare modelli di machine learning. Attualmente si sta concentrando sulla creazione di contenuti e sulla scrittura di blog tecnici sulle tecnologie di apprendimento automatico e scienza dei dati. Abid ha conseguito un Master in Technology Management e una laurea in Ingegneria delle Telecomunicazioni. La sua visione è quella di costruire un prodotto di intelligenza artificiale utilizzando una rete neurale grafica per studenti alle prese con malattie mentali.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoData.Network Generativo verticale Ai. Potenzia te stesso. Accedi qui.
- PlatoAiStream. Intelligenza Web3. Conoscenza amplificata. Accedi qui.
- PlatoneESG. Carbonio, Tecnologia pulita, Energia, Ambiente, Solare, Gestione dei rifiuti. Accedi qui.
- Platone Salute. Intelligence sulle biotecnologie e sulle sperimentazioni cliniche. Accedi qui.
- Fonte: https://www.kdnuggets.com/how-to-access-and-use-gemini-api-for-free?utm_source=rss&utm_medium=rss&utm_campaign=how-to-access-and-use-gemini-api-for-free
- :ha
- :È
- $ SU
- 1
- 10
- 12
- 13
- 14
- 17
- 27
- 7
- 8
- 9
- a
- WRI
- accesso
- con precisione
- operanti in
- l'aggiunta di
- aggiuntivo
- Informazioni aggiuntive
- Avanzate
- ancora
- AI
- alieni
- Tutti
- consente
- quasi
- anche
- stupefacente
- an
- ed
- risposte
- Antropico
- api
- API
- applicazioni
- architettura
- SONO
- argomento
- AS
- chiedere
- At
- Audio
- equilibrato
- BE
- diventando
- stato
- prima
- Segno di riferimento
- fra
- Blog
- blog
- entrambi
- costruire
- Costruzione
- costruito
- aziende
- ma
- pulsante
- by
- detto
- Materiale
- candidato
- i candidati
- funzionalità
- capace
- Custodie
- casi
- centri
- Certificato
- chiacchierare
- dai un'occhiata
- Pulizia
- clicca
- codice
- collaborazione
- confrontare
- confronto
- complesso
- contenuto
- creazione di contenuti
- contesto
- Conversazione
- Conversazioni
- convertire
- Corrispondente
- coprire
- creazione
- Attualmente
- costume
- personalizzare
- dati
- data center
- scienza dei dati
- scienziato di dati
- Data
- DeepMind
- Laurea
- denso
- progettato
- sviluppato
- sviluppatori
- dispositivi
- didn
- diverso
- Dsiplay
- paesaggio differenziato
- do
- documenti
- don
- DotA
- Dota 2
- giù
- facilmente
- facile
- efficiente
- in modo efficiente
- incorporamento
- Ingegneria
- Intero
- Ambiente
- Etere (ETH)
- aspetta
- esperti
- Spiegare
- esplora
- più veloce
- Nome
- flessibile
- messa a fuoco
- seguire
- Nel
- formato
- Gratis
- da
- function
- funzioni
- gioco
- Gemini
- generare
- ELETTRICA
- ottenere
- gif
- Go
- andando
- buono
- grafico
- Grafico rete neurale
- guida
- ha avuto
- Avere
- avendo
- he
- Aiuto
- qui
- Heroes
- Alta
- vivamente
- il suo
- storia
- detiene
- Come
- Tutorial
- Tuttavia
- HTTPS
- umano
- i
- identificato
- malattia
- Immagine
- immagini
- importare
- in
- Compreso
- sempre più
- informazioni
- avviare
- install
- esempio
- invece
- integrazione
- ai miglioramenti
- introduttivo
- IT
- SUO
- jpg
- julia
- ad appena
- KDnuggets
- Le
- conoscenze
- Lingua
- maggiore
- IMPARARE
- imparato
- apprendimento
- piace
- senza limiti
- Lista
- caricare
- più a lungo
- ama
- macchina
- machine learning
- FA
- gestione
- molti
- massiccio
- Mastercard
- max
- me
- significato
- si intende
- mentale
- Malattia mentale
- Metrica
- Mobile
- dispositivi mobili
- Moda
- modello
- modelli
- Scopri di più
- maggior parte
- multiplo
- Nome
- nano
- NBA
- Rete
- Neurale
- rete neurale
- New
- GENERAZIONE
- adesso
- oggetto
- of
- on
- ONE
- esclusivamente
- OpenAI
- operare
- or
- OS
- nostro
- su
- Outperform
- produzione
- Palazzo
- particolare
- Di passaggio
- perfetta
- performance
- esecuzione
- cronologia
- foto
- pezzi
- Platone
- Platone Data Intelligence
- PlatoneDati
- gioco
- per favore
- punto
- Popolare
- possibilità
- possibile
- Post
- potenziale
- precedente
- Pro
- Problema
- problem-solving
- Prodotto
- professionale
- fornire
- purché
- fornitura
- Python
- qualità
- query
- domanda
- abbastanza
- gamma
- RE
- riferimento
- rappresentazione
- rappresentato
- riparazioni
- risposta
- risposte
- colpevole
- rivoluzionare
- s
- stesso
- risparmio
- Scalabilità
- Scala
- scala ai
- Scienze
- Scienziato
- scorrere
- Sezione
- vedere
- select
- Sessione
- set
- regolazione
- alcuni
- Condividi
- Corti
- dovrebbero
- simile
- Un'espansione
- singolo
- So
- Soluzione
- lo spazio
- in particolare
- inizia a
- iniziato
- state-of-the-art
- step
- Fermare
- fermato
- Storia
- ruscello
- Streaming
- Lottando
- Gli studenti
- style
- adatto
- superficie
- SISTEMI DI TRATTAMENTO
- T
- task
- le squadre
- Consulenza
- Tecnologie
- Tecnologia
- telecomunicazione
- test
- test
- testo
- generazione di testo
- che
- Il
- loro
- Li
- poi
- questo
- tre
- Attraverso
- a
- Tokens
- viaggiare
- guaio
- lezione
- Tipi di
- Ultra
- capire
- e una comprensione reciproca
- us
- utilizzabile
- uso
- Utente
- utilizzando
- variabile
- vario
- Video
- visione
- visivo
- Prima
- Modo..
- we
- Che
- quale
- OMS
- largo
- Vasta gamma
- volere
- con
- Word
- parole
- Lavora
- mondo
- scrivere
- scrittura
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro