Updating the "Using embeddings" cookbook to reflect the latest SDK (#1014)

revert-1014-origin/jbeutler/embeddings-sdk-update
Joe Beutler 1 month ago committed by GitHub
parent ac7f6552a0
commit 7c3aaa85c8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -12,7 +12,7 @@
},
{
"cell_type": "code",
"execution_count": 1,
"execution_count": null,
"metadata": {},
"outputs": [
{
@ -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"
]
},
@ -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))"
]
},
@ -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))"

Loading…
Cancel
Save