a0c8464e58
Build Package / build (ubuntu-latest) (push) Failing after 1s
CodeQL / Analyze (python) (push) Failing after 1s
Core Typecheck / core-typecheck (push) Failing after 1s
Linting / lint (push) Failing after 1s
llama-dev tests / test-llama-dev (push) Failing after 1s
Publish Sub-Package to PyPI if Needed / publish_subpackage_if_needed (push) Has been skipped
Sync Docs to Developer Hub / sync-docs (push) Failing after 0s
Build Package / build (windows-latest) (push) Has been cancelled
176 lines
4.3 KiB
Plaintext
176 lines
4.3 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "efe8f603c3a1ea67",
|
|
"metadata": {},
|
|
"source": [
|
|
"<a href=\"https://colab.research.google.com/github/run-llama/llama_index/blob/main/docs/examples/embeddings/ollama_embedding.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "7d05ee2e5015619a",
|
|
"metadata": {},
|
|
"source": [
|
|
"# Ollama Embeddings"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "7ec795e92b745944",
|
|
"metadata": {},
|
|
"source": [
|
|
"If you're opening this Notebook on colab, you will probably need to install LlamaIndex 🦙."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "429b804c",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"%pip install llama-index-embeddings-ollama"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "a45593c62b5a6518",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"from llama_index.embeddings.ollama import OllamaEmbedding\n",
|
|
"\n",
|
|
"ollama_embedding = OllamaEmbedding(\n",
|
|
" model_name=\"embeddinggemma\",\n",
|
|
" base_url=\"http://localhost:11434\",\n",
|
|
" # Can optionally pass additional kwargs to ollama\n",
|
|
" # ollama_additional_kwargs={\"mirostat\": 0},\n",
|
|
")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"id": "b3066acb",
|
|
"metadata": {},
|
|
"source": [
|
|
"You can generate embeddings using one of several methods:\n",
|
|
"\n",
|
|
"- `get_text_embedding_batch`\n",
|
|
"- `get_text_embedding`\n",
|
|
"- `get_query_embedding`\n",
|
|
"\n",
|
|
"As well as async versions:\n",
|
|
"- `aget_text_embedding_batch`\n",
|
|
"- `aget_text_embedding`\n",
|
|
"- `aget_query_embedding`"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "7e1c8ff8",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stderr",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Generating embeddings: 100%|██████████| 2/2 [00:00<00:00, 3.66it/s]"
|
|
]
|
|
},
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Got vectors of length 768\n",
|
|
"[-0.19284482, -0.0048683924, 0.011490762, -0.035292886, 0.0018508184, 0.013227936, -0.045588765, 0.027076142, 0.03387062, -0.030585105]\n"
|
|
]
|
|
},
|
|
{
|
|
"name": "stderr",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"embeddings = ollama_embedding.get_text_embedding_batch(\n",
|
|
" [\"This is a passage!\", \"This is another passage\"], show_progress=True\n",
|
|
")\n",
|
|
"print(f\"Got vectors of length {len(embeddings[0])}\")\n",
|
|
"print(embeddings[0][:10])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "d84bc196",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Got vectors of length 768\n",
|
|
"[-0.18305846, -0.009758809, 0.022796445, -0.038445882, -0.00894579, 0.023117013, -0.05166001, 0.037556227, 0.03699912, -0.017603736]\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"embedding = ollama_embedding.get_text_embedding(\n",
|
|
" \"This is a piece of text!\",\n",
|
|
")\n",
|
|
"print(f\"Got vectors of length {len(embedding)}\")\n",
|
|
"print(embedding[:10])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "1ac79a2f",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Got vectors of length 768\n",
|
|
"[-0.19484262, -0.014648143, 0.02743501, -0.015000358, 0.0027351314, 0.019096522, -0.071097225, 0.033618074, 0.05173764, -0.024861954]\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"embedding = ollama_embedding.get_query_embedding(\n",
|
|
" \"This is a query!\",\n",
|
|
")\n",
|
|
"print(f\"Got vectors of length {len(embedding)}\")\n",
|
|
"print(embedding[:10])"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": ".venv",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 5
|
|
}
|