Markdown Converter
Agent skill for markdown-converter
Loading actions...
---
id:[YOUR API KEY>]google-gemini
name:[YOUR API KEY>]"Google[YOUR API KEY>]Gemini"
---
#[YOUR API KEY>]Google[YOUR API KEY>]Gemini
Chroma[YOUR API KEY>]provides[YOUR API KEY>]a[YOUR API KEY>]convenient[YOUR API KEY>]wrapper[YOUR API KEY>]around[YOUR API KEY>]Google's[YOUR API KEY>]Generative[YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>]embedding[YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>].[YOUR API KEY>]This[YOUR API KEY>]embedding[YOUR API KEY>]function[YOUR API KEY>]runs[YOUR API KEY>]remotely[YOUR API KEY>]on[YOUR API KEY>]Google's[YOUR API KEY>]servers,[YOUR API KEY>]and[YOUR API KEY>]requires[YOUR API KEY>]an[YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>]key.
[YOUR API KEY>]ou[YOUR API KEY>]can[YOUR API KEY>]get[YOUR API KEY>]an[YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>]key[YOUR API KEY>]by[YOUR API KEY>]signing[YOUR API KEY>]up[YOUR API KEY>]for[YOUR API KEY>]an[YOUR API KEY>]account[YOUR API KEY>]at[YOUR API KEY>][Google[YOUR API KEY>]MakerSuite](https://makersuite.google.com/).
{%[YOUR API KEY>]Tabs[YOUR API KEY>]%}
{%[YOUR API KEY>]Tab[YOUR API KEY>]label="python"[YOUR API KEY>]%}
This[YOUR API KEY>]embedding[YOUR API KEY>]function[YOUR API KEY>]relies[YOUR API KEY>]on[YOUR API KEY>]the[YOUR API KEY>]`google-generativeai`[YOUR API KEY>]python[YOUR API KEY>]package,[YOUR API KEY>]which[YOUR API KEY>]you[YOUR API KEY>]can[YOUR API KEY>]install[YOUR API KEY>]with[YOUR API KEY>]`pip[YOUR API KEY>]install[YOUR API KEY>]google-generativeai`.
```python
#[YOUR API KEY>]import
import[YOUR API KEY>]chromadb.utils.embedding_functions[YOUR API KEY>]as[YOUR API KEY>]embedding_functions
#[YOUR API KEY>]use[YOUR API KEY>]directly
google_ef[YOUR API KEY>][YOUR API KEY>]=[YOUR API KEY>]embedding_functions.GoogleGenerative[YOUR API KEY>]i[YOUR API KEY>]mbeddingFunction(api_key="[YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>]_[YOUR API KEY>][YOUR API KEY>][YOUR API KEY>]_[YOUR API KEY>][YOUR API KEY>][YOUR API KEY>]")
google_ef(["document1","document2"])
#[YOUR API KEY>]pass[YOUR API KEY>]documents[YOUR API KEY>]to[YOUR API KEY>]query[YOUR API KEY>]for[YOUR API KEY>].add[YOUR API KEY>]and[YOUR API KEY>].query
collection[YOUR API KEY>]=[YOUR API KEY>]client.create_collection(name="name",[YOUR API KEY>]embedding_function=google_ef)
collection[YOUR API KEY>]=[YOUR API KEY>]client.get_collection(name="name",[YOUR API KEY>]embedding_function=google_ef)
```
[YOUR API KEY>]ou[YOUR API KEY>]can[YOUR API KEY>]view[YOUR API KEY>]a[YOUR API KEY>]more[YOUR API KEY>][complete[YOUR API KEY>]example](https://github.com/chroma-core/chroma/tree/main/examples/gemini)[YOUR API KEY>]chatting[YOUR API KEY>]over[YOUR API KEY>]documents[YOUR API KEY>]with[YOUR API KEY>]Gemini[YOUR API KEY>]embedding[YOUR API KEY>]and[YOUR API KEY>]langauge[YOUR API KEY>]models.
For[YOUR API KEY>]more[YOUR API KEY>]info[YOUR API KEY>]-[YOUR API KEY>]please[YOUR API KEY>]visit[YOUR API KEY>]the[YOUR API KEY>][official[YOUR API KEY>]Google[YOUR API KEY>]python[YOUR API KEY>]docs](https://ai.google.dev/tutorials/python_quickstart).
{%[YOUR API KEY>]/Tab[YOUR API KEY>]%}
{%[YOUR API KEY>]Tab[YOUR API KEY>]label="typescript"[YOUR API KEY>]%}
```typescript
//[YOUR API KEY>]npm[YOUR API KEY>]install[YOUR API KEY>]@chroma-core/google-gemini
import[YOUR API KEY>]{[YOUR API KEY>]ChromaClient[YOUR API KEY>]}[YOUR API KEY>]from[YOUR API KEY>]"chromadb";
import[YOUR API KEY>]{[YOUR API KEY>]GoogleGenerative[YOUR API KEY>]i[YOUR API KEY>]mbeddingFunction[YOUR API KEY>]}[YOUR API KEY>]from[YOUR API KEY>]"@chroma-core/google-gemini";
const[YOUR API KEY>]embedder[YOUR API KEY>]=[YOUR API KEY>]new[YOUR API KEY>]GoogleGenerative[YOUR API KEY>]i[YOUR API KEY>]mbeddingFunction({
[YOUR API KEY>][YOUR API KEY>]api[YOUR API KEY>]ey:[YOUR API KEY>]"<[YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>][YOUR API KEY>]",
});
//[YOUR API KEY>]use[YOUR API KEY>]directly
const[YOUR API KEY>]embeddings[YOUR API KEY>]=[YOUR API KEY>]await[YOUR API KEY>]embedder.generate(["document1",[YOUR API KEY>]"document2"]);
//[YOUR API KEY>]pass[YOUR API KEY>]documents[YOUR API KEY>]to[YOUR API KEY>]query[YOUR API KEY>]for[YOUR API KEY>].add[YOUR API KEY>]and[YOUR API KEY>].query
const[YOUR API KEY>]collection[YOUR API KEY>]=[YOUR API KEY>]await[YOUR API KEY>]client.createCollection({
[YOUR API KEY>][YOUR API KEY>]name:[YOUR API KEY>]"name",
[YOUR API KEY>][YOUR API KEY>]embeddingFunction:[YOUR API KEY>]embedder,
});
const[YOUR API KEY>]collectionGet[YOUR API KEY>]=[YOUR API KEY>]await[YOUR API KEY>]client.getCollection({
[YOUR API KEY>][YOUR API KEY>]name:[YOUR API KEY>]"name",
[YOUR API KEY>][YOUR API KEY>]embeddingFunction:[YOUR API KEY>]embedder,
});
```
[YOUR API KEY>]ou[YOUR API KEY>]can[YOUR API KEY>]view[YOUR API KEY>]a[YOUR API KEY>]more[YOUR API KEY>][complete[YOUR API KEY>]example[YOUR API KEY>]using[YOUR API KEY>]Node](https://github.com/chroma-core/chroma/blob/main/clients/js/examples/node/app.js).
For[YOUR API KEY>]more[YOUR API KEY>]info[YOUR API KEY>]-[YOUR API KEY>]please[YOUR API KEY>]visit[YOUR API KEY>]the[YOUR API KEY>][official[YOUR API KEY>]Google[YOUR API KEY>]JS[YOUR API KEY>]docs](https://ai.google.dev/tutorials/node_quickstart).
{%[YOUR API KEY>]/Tab[YOUR API KEY>]%}
{%[YOUR API KEY>]/Tabs[YOUR API KEY>]%}
Chroma provides a convenient wrapper around Google's Generative AI embedding API. This embedding function runs remotely on Google's servers, and requires an API key.
You can get an API key by signing up for an account at Google MakerSuite.
{% Tabs %}
{% Tab label="python" %}
This embedding function relies on the google-generativeai python package, which you can install with pip install google-generativeai.
# import
import chromadb.utils.embedding_functions as embedding_functions
# use directly
google_ef = embedding_functions.GoogleGenerativeAiEmbeddingFunction(api_key="YOUR_API_KEY")
google_ef(["document1","document2"])
# pass documents to query for .add and .query
collection = client.create_collection(name="name", embedding_function=google_ef)
collection = client.get_collection(name="name", embedding_function=google_ef)
You can view a more complete example chatting over documents with Gemini embedding and langauge models.
For more info - please visit the official Google python docs.
{% /Tab %}
{% Tab label="typescript" %}
// npm install @chroma-core/google-gemini
import { ChromaClient } from "chromadb";
import { GoogleGenerativeAiEmbeddingFunction } from "@chroma-core/google-gemini";
const embedder = new GoogleGenerativeAiEmbeddingFunction({
apiKey: "<YOUR API KEY>",
});
// use directly
const embeddings = await embedder.generate(["document1", "document2"]);
// pass documents to query for .add and .query
const collection = await client.createCollection({
name: "name",
embeddingFunction: embedder,
});
const collectionGet = await client.getCollection({
name: "name",
embeddingFunction: embedder,
});
You can view a more complete example using Node.
For more info - please visit the official Google JS docs.
{% /Tab %}
{% /Tabs %}