forked from phoenix/litellm-mirror
166 lines
No EOL
4.7 KiB
Text
Vendored
166 lines
No EOL
4.7 KiB
Text
Vendored
{
|
|
"nbformat": 4,
|
|
"nbformat_minor": 0,
|
|
"metadata": {
|
|
"colab": {
|
|
"provenance": []
|
|
},
|
|
"kernelspec": {
|
|
"name": "python3",
|
|
"display_name": "Python 3"
|
|
},
|
|
"language_info": {
|
|
"name": "python"
|
|
}
|
|
},
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"source": [
|
|
"# LiteLLM Batch Completions Example\n",
|
|
"\n",
|
|
"* This tutorial walks through using `batch_completion`\n",
|
|
"* Docs: https://docs.litellm.ai/docs/completion/batching"
|
|
],
|
|
"metadata": {
|
|
"id": "MbLbs1tbISk-"
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "Ty6-ko_aDlPF"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"!pip install litellm"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"source": [
|
|
"## Import Batch Completion"
|
|
],
|
|
"metadata": {
|
|
"id": "KGhNJRUCIh1j"
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"source": [
|
|
"import litellm\n",
|
|
"import os\n",
|
|
"from litellm import batch_completion\n",
|
|
"\n",
|
|
"# set your API_KEY\n",
|
|
"os.environ['ANTHROPIC_API_KEY'] = \"\""
|
|
],
|
|
"metadata": {
|
|
"id": "LOtI43snDrSK"
|
|
},
|
|
"execution_count": 7,
|
|
"outputs": []
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"source": [
|
|
"## Calling `litellm.batch_completion`\n",
|
|
"\n",
|
|
"In the batch_completion method, you provide a list of messages where each sub-list of messages is passed to litellm.completion(), allowing you to process multiple prompts efficiently in a single API call."
|
|
],
|
|
"metadata": {
|
|
"id": "Xhv92NBaIpaw"
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"source": [
|
|
"import litellm\n",
|
|
"import os\n",
|
|
"from litellm import batch_completion\n",
|
|
"\n",
|
|
"os.environ['ANTHROPIC_API_KEY'] = \"\"\n",
|
|
"\n",
|
|
"\n",
|
|
"responses = batch_completion(\n",
|
|
" model=\"claude-2\",\n",
|
|
" messages = [\n",
|
|
" [\n",
|
|
" {\n",
|
|
" \"role\": \"user\",\n",
|
|
" \"content\": \"good morning? \"\n",
|
|
" }\n",
|
|
" ],\n",
|
|
" [\n",
|
|
" {\n",
|
|
" \"role\": \"user\",\n",
|
|
" \"content\": \"what's the time? \"\n",
|
|
" }\n",
|
|
" ]\n",
|
|
" ]\n",
|
|
")\n",
|
|
"responses"
|
|
],
|
|
"metadata": {
|
|
"colab": {
|
|
"base_uri": "https://localhost:8080/"
|
|
},
|
|
"id": "yY7GIRLsDywu",
|
|
"outputId": "009ea67f-95d5-462b-947f-b0d21e60c5bb"
|
|
},
|
|
"execution_count": 11,
|
|
"outputs": [
|
|
{
|
|
"output_type": "execute_result",
|
|
"data": {
|
|
"text/plain": [
|
|
"[<ModelResponse at 0x7a164eed4450> JSON: {\n",
|
|
" \"choices\": [\n",
|
|
" {\n",
|
|
" \"finish_reason\": \"stop\",\n",
|
|
" \"index\": 0,\n",
|
|
" \"message\": {\n",
|
|
" \"content\": \" Good morning!\",\n",
|
|
" \"role\": \"assistant\",\n",
|
|
" \"logprobs\": null\n",
|
|
" }\n",
|
|
" }\n",
|
|
" ],\n",
|
|
" \"created\": 1694030351.309254,\n",
|
|
" \"model\": \"claude-2\",\n",
|
|
" \"usage\": {\n",
|
|
" \"prompt_tokens\": 11,\n",
|
|
" \"completion_tokens\": 3,\n",
|
|
" \"total_tokens\": 14\n",
|
|
" }\n",
|
|
" },\n",
|
|
" <ModelResponse at 0x7a164eed5800> JSON: {\n",
|
|
" \"choices\": [\n",
|
|
" {\n",
|
|
" \"finish_reason\": \"stop\",\n",
|
|
" \"index\": 0,\n",
|
|
" \"message\": {\n",
|
|
" \"content\": \" I'm an AI assistant created by Anthropic. I don't actually have a concept of the current time.\",\n",
|
|
" \"role\": \"assistant\",\n",
|
|
" \"logprobs\": null\n",
|
|
" }\n",
|
|
" }\n",
|
|
" ],\n",
|
|
" \"created\": 1694030352.1215081,\n",
|
|
" \"model\": \"claude-2\",\n",
|
|
" \"usage\": {\n",
|
|
" \"prompt_tokens\": 13,\n",
|
|
" \"completion_tokens\": 22,\n",
|
|
" \"total_tokens\": 35\n",
|
|
" }\n",
|
|
" }]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"execution_count": 11
|
|
}
|
|
]
|
|
}
|
|
]
|
|
} |