Skip to content

Commit

Permalink
Updating the "Using embeddings" cookbook to reflect the latest SDK (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
jbeutler-openai committed Apr 1, 2024
1 parent ac7f655 commit 7c3aaa8
Showing 1 changed file with 14 additions and 11 deletions.
25 changes: 14 additions & 11 deletions examples/Using_embeddings.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
},
{
"cell_type": "code",
"execution_count": 1,
"execution_count": null,
"metadata": {},
"outputs": [
{
Expand All @@ -27,11 +27,12 @@
}
],
"source": [
"import openai\n",
"from openai import OpenAI\n",
"client = OpenAI()\n",
"\n",
"embedding = openai.Embedding.create(\n",
" input=\"Your text goes here\", model=\"text-embedding-3-small\"\n",
")[\"data\"][0][\"embedding\"]\n",
"embedding = client.embeddings.create(\n",
" input=\"Your text goes here\", model=\"text-embedding-ada-002\"\n",
").data[0].embedding\n",
"len(embedding)\n"
]
},
Expand All @@ -50,13 +51,14 @@
"outputs": [],
"source": [
"# Negative example (slow and rate-limited)\n",
"import openai\n",
"from openai import OpenAI\n",
"client = OpenAI()\n",
"\n",
"num_embeddings = 10000 # Some large number\n",
"for i in range(num_embeddings):\n",
" embedding = openai.Embedding.create(\n",
" input=\"Your text goes here\", model=\"text-embedding-3-small\"\n",
" )[\"data\"][0][\"embedding\"]\n",
" embedding = client.embeddings.create(\n",
" input=\"Your text goes here\", model=\"text-embedding-ada-002\"\n",
" ).data[0].embedding\n",
" print(len(embedding))"
]
},
Expand All @@ -75,13 +77,14 @@
],
"source": [
"# Best practice\n",
"import openai\n",
"from tenacity import retry, wait_random_exponential, stop_after_attempt\n",
"from openai import OpenAI\n",
"client = OpenAI()\n",
"\n",
"# Retry up to 6 times with exponential backoff, starting at 1 second and maxing out at 20 seconds delay\n",
"@retry(wait=wait_random_exponential(min=1, max=20), stop=stop_after_attempt(6))\n",
"def get_embedding(text: str, model=\"text-embedding-3-small\") -> list[float]:\n",
" return openai.Embedding.create(input=[text], model=model)[\"data\"][0][\"embedding\"]\n",
" return client.embeddings.create(input=[text], model=model).data[0].embedding\n",
"\n",
"embedding = get_embedding(\"Your text goes here\", model=\"text-embedding-3-small\")\n",
"print(len(embedding))"
Expand Down

0 comments on commit 7c3aaa8

Please sign in to comment.