
    mh                     :   U d dl Z d dlmZmZ  e e j        dd                    Z e e j        dd                    Z e e j        dd                    Z	 e e j        d	d                    Z
 e e j        d
d                    Z e e j        dd                    Z e e j        dd                    Z e e j        dd                    Z e e j        dd                    ZdZdZ e e j        dd                    Z e e j        dd                    Z e e j        dd                    Z e e j        dd                    Z e e j        dd                    Z e e j        dd                    Z e e j        dd                    Z e e j        dd                    Z e e j        d d                    Z e e j        d!d                    Z e e j        d"d#                    Z e e j        d$d%                    Z e e j        d&d%                    Z e e j        d'd(                    Z  e e j        d)d*                    Z! e e j        d+d                     Z" e e j        d,d                    Z# e e j        d-d.                    Z$ e e j        d/d                    Z% e e j        d0d.                    Z& e e j        d1d(                    Z' e e j        d2d3                    Z( e e j        d4d                    Z) e e j        d5d                    Z*d6Z+d7Z,d8Z-d9Z.d:Z/ e e j        d;d                    Z0 e e j        d<d=                    Z1 e e j        d>d*                    Z2 e e j        d?d(                    Z3 e e j        d@dA                    Z4 e e j        dBdC                    Z5 e e j        dDdE                    Z6 e e j        dFdG                    Z7 e e j        dHdI                    Z8 e e j        dJdK                    Z9 e e j        dLdM                    Z: e e j        dNdO                    Z; e e j        dPdO                    Z< e e j        dQd                    Z= e e j        dRdS                    Z> e e j        dTdU                    Z? e e j        dVdW                    Z@ e e j        dXd                    ZA e e j        dYd                    ZB e e j        dZd[                    ZC e e j        d\d]                    ZD e e j        d^d_                    ZE e e j        d`da                    ZF e e j        dbdc                    ZG e e j        ddd]                    ZH e e j        dedf                    ZI e e j        dgd                    ZJ e e j        dhdi                    ZK e e j        djd                    ZL e e j        dkdl                    ZM e e j        dmdA                    ZN e e j        dnd                    ZO e e j        dod_                    ZP e e j        dpdq                    ZQ e e j        drd]                    ZR e e j        dsd                    ZS e e j        dtdu                    ZT e e j        dvdW                    ZU e e j        dwd3                    ZV e e j        dxdy                    ZW e e j        dzd                    ZX e e j        d{d                    ZY e e j        d|dO                    ZZ e e j        d}d~                    Z[ e e j        dd                    Z\ e e j        dd                    Z] e e j        dd                    Z^ e e j        dd                    Z_ e e j        dd                    Z` e e j        dd                    Za e e j        dd                    Zb e e j        dd                    Zc e e j        dd                    Zd e e j        d'd                    Z  e e j        ddW                    Ze e e j        dd                    Zfeegd<   dZheegd<   dZieegd<    e e j        dd                    Zj e e j        dd                    Zk e e j        dd                    Zl e e j        ddO                    Zm e e j        ddi                    Zn e e j        dd                    ZodZp e e j        dd                    Zq e j        dd          ZrddddZsdZtg dZug dZvg dZwg dZxg dZyi d eyD             ddddZzi ddddddddddddddddddddddddddddddddddi ddddddddddddddddddddddddddddddddddddddӜZ{g dԢZ|eegd<   g d֢Z}eegd<   g dآZ~eegd<   g dڢZeegd<    eg dܢ          Zeegd<    eg dޢ          Zeegd<    eg d          Zeegd<    eddg          Z eg d          Zeegd<    eg d          Zeegd<    eg d          Zeegd<    eg d          Zeegd<    eg d          Zeegd<    eg d          Zeegd<    eg d          Zeegd<   ed         Zed         Zg dZ edg          Zeegd<    eg d          Zeegd<    eg d          Zeegd<   dddddd dddddd ddddddddddddddddddd	dddddddi dd
dddd dZg dZ e e j        dd                    ZdZdZ e e j        dd                    Z e e j        dd                    ZdZ e e j        dd                    ZdZdZdZdZ e e j        dd                    Z e e j        dd                    ZdZg d Zd!Z e e j        d"d6                    Z e e j        d#dC                    Z e e j        d$d                    Zd%Zd&Zd'Z e j        d(d)          Z e e j        d*d+                    Zd,Zd-Zd&Zd.Zd/Zd0Zd1Z e e j        d2d3                    Zd4Z e e j        d5d6                    Z e e j        d7d*                    Z e e j        d8d                    Z e e j        d9d:                    Z e e j        d;d6                    Z e e j        d<d=                    Z e e j        d>d                    Z e e j        d?d%                    Z e e j        d@dM                    Z e e j        dAdB                    Z e e j        dCd%                    Z e e j        dDdS                    Z e e j        dEdF                    Z e e j        dGdi                    Z e e j        dHd+                    Zg dIZĐdJgZ e e j        dKd                    Zg dLZg dMZ e e j        dNd*                    ZdS (O      N)ListLiteral#AZURE_DEFAULT_RESPONSES_API_VERSIONpreviewROUTER_MAX_FALLBACKS   DEFAULT_BATCH_SIZEi   DEFAULT_FLUSH_INTERVAL_SECONDS!DEFAULT_S3_FLUSH_INTERVAL_SECONDS
   DEFAULT_S3_BATCH_SIZE"DEFAULT_SQS_FLUSH_INTERVAL_SECONDS!DEFAULT_NUM_WORKERS_LITELLM_PROXY   DEFAULT_SQS_BATCH_SIZESendMessagez
2012-11-05DEFAULT_MAX_RETRIES   DEFAULT_MAX_RECURSE_DEPTHd   /DEFAULT_MAX_RECURSE_DEPTH_SENSITIVE_DATA_MASKER!DEFAULT_FAILURE_THRESHOLD_PERCENTg      ?DEFAULT_MAX_TOKENSi   DEFAULT_ALLOWED_FAILS   DEFAULT_REDIS_SYNC_INTERVALDEFAULT_COOLDOWN_TIME_SECONDS!DEFAULT_REPLICATE_POLLING_RETRIES'DEFAULT_REPLICATE_POLLING_DELAY_SECONDSDEFAULT_IMAGE_TOKEN_COUNT   DEFAULT_IMAGE_WIDTHi,  DEFAULT_IMAGE_HEIGHT'MAX_SIZE_PER_ITEM_IN_MEMORY_CACHE_IN_KBi   +SINGLE_DEPLOYMENT_TRAFFIC_FAILURE_THRESHOLDi  0DEFAULT_REASONING_EFFORT_DISABLE_THINKING_BUDGETADEFAULT_REASONING_EFFORT_MINIMAL_THINKING_BUDGET_GEMINI_2_5_FLASH?DEFAULT_REASONING_EFFORT_MINIMAL_THINKING_BUDGET_GEMINI_2_5_PRO   FDEFAULT_REASONING_EFFORT_MINIMAL_THINKING_BUDGET_GEMINI_2_5_FLASH_LITE0DEFAULT_REASONING_EFFORT_MINIMAL_THINKING_BUDGET,DEFAULT_REASONING_EFFORT_LOW_THINKING_BUDGET/DEFAULT_REASONING_EFFORT_MEDIUM_THINKING_BUDGETi   -DEFAULT_REASONING_EFFORT_HIGH_THINKING_BUDGETMAX_TOKEN_TRIMMING_ATTEMPTSi  litellm_spend_update_buffer!litellm_daily_spend_update_buffer&litellm_daily_team_spend_update_buffer%litellm_daily_tag_spend_update_bufferMAX_REDIS_BUFFER_DEQUEUE_COUNTMAX_SIZE_IN_MEMORY_QUEUEi'  MAX_IN_MEMORY_QUEUE_FLUSH_COUNT MINIMUM_PROMPT_CACHE_TOKEN_COUNTDEFAULT_TRIM_RATIOg      ?HOURS_IN_A_DAY   DAYS_IN_A_WEEK   DAYS_IN_A_MONTH   DAYS_IN_A_YEARim  #REPLICATE_MODEL_NAME_WITH_ID_LENGTH@   FUNCTION_DEFINITION_TOKEN_COUNT	   SYSTEM_MESSAGE_TOKEN_COUNT   TOOL_CHOICE_OBJECT_TOKEN_COUNT(DEFAULT_MOCK_RESPONSE_PROMPT_TOKEN_COUNT,DEFAULT_MOCK_RESPONSE_COMPLETION_TOKEN_COUNT   !MAX_SHORT_SIDE_FOR_IMAGE_HIGH_RESi    MAX_LONG_SIDE_FOR_IMAGE_HIGH_RESi  MAX_TILE_WIDTHMAX_TILE_HEIGHT$OPENAI_FILE_SEARCH_COST_PER_1K_CALLSg{Gzd?%AZURE_FILE_SEARCH_COST_PER_GB_PER_DAYg?'AZURE_CODE_INTERPRETER_COST_PER_SESSIONgQ?+AZURE_COMPUTER_USE_INPUT_COST_PER_1K_TOKENSg      @,AZURE_COMPUTER_USE_OUTPUT_COST_PER_1K_TOKENSg      (@&AZURE_VECTOR_STORE_COST_PER_GB_PER_DAYMIN_NON_ZERO_TEMPERATUREg-C6?REPEATED_STREAMING_CHUNK_LIMITDEFAULT_MAX_LRU_CACHE_SIZE   INITIAL_RETRY_DELAYMAX_RETRY_DELAYg       @JITTERDEFAULT_IN_MEMORY_TTLDEFAULT_POLLING_INTERVALAZURE_OPERATION_POLLING_TIMEOUTx   REDIS_SOCKET_TIMEOUTREDIS_CONNECTION_POOL_TIMEOUTNON_LLM_CONNECTION_TIMEOUT   MAX_EXCEPTION_MESSAGE_LENGTHMAX_STRING_LENGTH_PROMPT_IN_DBBEDROCK_MAX_POLICY_SIZEK   REPLICATE_POLLING_DELAY_SECONDS!DEFAULT_ANTHROPIC_CHAT_MAX_TOKENSTOGETHER_AI_4_BTOGETHER_AI_8_B   TOGETHER_AI_21_B   TOGETHER_AI_41_B)   TOGETHER_AI_80_BP   TOGETHER_AI_110_Bn   TOGETHER_AI_EMBEDDING_150_M   TOGETHER_AI_EMBEDDING_350_Mi^  QDRANT_SCALAR_QUANTILEgGz?QDRANT_VECTOR_SIZEi   CACHED_STREAMING_CHUNK_DELAYg{Gz?DEFAULT_MAX_TOKENS_FOR_TRITONREQUEST_TIMEOUTip  request_timeoutz[DONE]STREAM_SSE_DONE_STRINGzdata: STREAM_SSE_DATA_PREFIX&DEFAULT_REPLICATE_GPU_PRICE_PER_SECONDgǺV?FIREWORKS_AI_56_B_MOE8   FIREWORKS_AI_176_B_MOE   FIREWORKS_AI_4_BFIREWORKS_AI_16_BFIREWORKS_AI_80_BREDACTED_BY_LITELM MAX_LANGFUSE_INITIALIZED_CLIENTS2   (DD_TRACER_STREAMING_CHUNK_YIELD_RESOURCEzstreaming.chunk.yield)lowmediumhighzdall-e-2)Ropenaiopenai_likebytezxaicustom_openaiztext-completion-openaicoherecohere_chatclarifai	anthropicanthropic_text	replicatehuggingfacetogether_ai	datarobot
openroutercometapi	vertex_aivertex_ai_betageminiai21basetenazure
azure_textazure_ai	sagemakersagemaker_chatbedrockvllm	nlp_cloudpetals	oobaboogaollamaollama_chat	deepinfra
perplexitymistralgroq
nvidia_nimcerebrasr   	ai21_chat
volcengine	codestralztext-completion-codestraldeepseek	sambanovamaritalk
cloudflarefireworks_ai
friendliaiwatsonxwatsonx_texttriton	predibase
databricksempowergithubcustomlitellm_proxyhosted_vllm	llamafile	lm_studio	galadrielgradient_aigithub_copilotnovita
meta_llamafeatherless_ainscalenebius	dashscopemoonshotv0herokuocimorph	lambda_aivercel_ai_gatewaywandbovhcloudlemonade)r   r   r   r   )'	functionsfunction_calltemperaturer   top_pnstreamstream_optionsstopmax_completion_tokens
modalities
predictionaudio
max_tokenspresence_penaltyfrequency_penalty
logit_biasuserr|   api_baseapi_versionapi_keydeployment_idorganizationbase_urldefault_headerstimeoutresponse_formatseedtoolstool_choicemax_retriesparallel_tool_callslogprobstop_logprobsreasoning_effortextra_headersthinkingweb_search_options)languager   timestamp_granularities)
dimensionsencoding_formatr   c                     i | ]}|d S )N ).0ks     </usr/local/lib/python3.11/site-packages/litellm/constants.py
<dictcomp>r  |  s    0001q$000     )modelcustom_llm_providerinputr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r   r   r   r   r   r   r   r   r   r   drop_paramsallowed_openai_paramsadditional_drop_paramsmessagesr   )r   r  safety_identifier)zapi.perplexity.aizapi.endpoints.anyscale.com/v1zapi.deepinfra.com/v1/openaizapi.mistral.ai/v1z(codestral.mistral.ai/v1/chat/completionsz'codestral.mistral.ai/v1/fim/completionszapi.groq.com/openai/v1z#https://integrate.api.nvidia.com/v1zapi.deepseek.com/v1zapi.together.xyz/v1zapp.empower.dev/api/v1z%https://api.friendli.ai/serverless/v1zapi.sambanova.ai/v1zapi.x.ai/v1zapi.galadriel.ai/v1zapi.llama.com/compat/v1/zapi.featherless.ai/v1zinference.api.nscale.com/v1zapi.studio.nebius.ai/v1z6https://dashscope-intl.aliyuncs.com/compatible-mode/v1zhttps://api.moonshot.ai/v1zhttps://api.v0.dev/v1zhttps://api.morphllm.com/v1zhttps://api.lambda.ai/v1zhttps://api.hyperbolic.xyz/v1zhttps://ai-gateway.vercel.sh/v1z!https://api.inference.wandb.ai/v1openai_compatible_endpoints))anyscaler   r   r   r   r   r   r   r   r   r   r   r   
xinferencer   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   
hyperbolicr   aimlr   openai_compatible_providers)r   r   r   r   r   r   r   r   r   r   r   r  r   +openai_text_completion_compatible_providers)r   r   r   _openai_like_providers)z[replicate/llama-2-70b-chat:2796ee9483c3fd7aa2e171d38f4ca12251a30609463dcfd4cd76703f22e96cdfz\a16z-infra/llama-2-13b-chat:2a7f981751ec7fdf87b5b91ad4db53683a98082e9ff7bfd12c8cd5ea85980a52zSmeta/codellama-13b:1c914d844307b0588599b8393480a3ba917b660c7e9dfae681542b5325f228dbzUreplicate/vicuna-13b:6282abe6a492de4145d7bb601023762212f9ddbbe78278bd6771c8b3b2f2a13bzajoehoover/instructblip-vicuna13b:c4c54e3c8c97cd50c2d2fec9be3b6065563ccf7d43787fb99f84151b867178fezXdaanelson/flan-t5-large:ce962b3f6792a57074a601d3979db5839697add2e4e02696b3ced4c022d4767fzWreplicate/dolly-v2-12b:ef0e1aefc61f8e096ebe4db6b2bacc297daf2ef6899f0f7e001ec445893500e5zYreplit/replit-code-v1-3b:b84f4c074b807211cd75e3e8b1589b6399052125b4c27106e43d47189e8415adreplicate_models)?z)clarifai/meta.Llama-3.Llama-3-8B-Instructz%clarifai/gcp.generate.gemma-1_1-7b-itz+clarifai/mistralai.completion.mixtral-8x22Bz'clarifai/cohere.generate.command-r-plusz&clarifai/databricks.drbx.dbrx-instructz+clarifai/mistralai.completion.mistral-largez,clarifai/mistralai.completion.mistral-mediumz+clarifai/mistralai.completion.mistral-smallz8clarifai/mistralai.completion.mixtral-8x7B-Instruct-v0_1z!clarifai/gcp.generate.gemma-2b-itz!clarifai/gcp.generate.gemma-7b-itz'clarifai/deci.decilm.deciLM-7B-instructz1clarifai/mistralai.completion.mistral-7B-Instructz clarifai/gcp.generate.gemini-proz'clarifai/anthropic.completion.claude-v1z0clarifai/anthropic.completion.claude-instant-1_2z,clarifai/anthropic.completion.claude-instantz'clarifai/anthropic.completion.claude-v2z(clarifai/anthropic.completion.claude-2_1z*clarifai/meta.Llama-2.codeLlama-70b-Pythonz,clarifai/meta.Llama-2.codeLlama-70b-Instructz1clarifai/openai.completion.gpt-3_5-turbo-instructz$clarifai/meta.Llama-2.llama2-7b-chatz%clarifai/meta.Llama-2.llama2-13b-chatz%clarifai/meta.Llama-2.llama2-70b-chatz+clarifai/openai.chat-completion.gpt-4-turboz(clarifai/microsoft.text-generation.phi-2z)clarifai/meta.Llama-2.llama2-7b-chat-vllmz+clarifai/upstage.solar.solar-10_7b-instructz,clarifai/openchat.openchat.openchat-3_5-1210z;clarifai/togethercomputer.stripedHyena.stripedHyena-Nous-7Bz clarifai/gcp.generate.text-bisonz#clarifai/meta.Llama-2.llamaGuard-7bz1clarifai/fblgit.una-cybertron.una-cybertron-7b-v2z%clarifai/openai.chat-completion.GPT-4z-clarifai/openai.chat-completion.GPT-3_5-turboz'clarifai/ai21.complete.Jurassic2-Grandez0clarifai/ai21.complete.Jurassic2-Grande-Instructz/clarifai/ai21.complete.Jurassic2-Jumbo-Instructz&clarifai/ai21.complete.Jurassic2-Jumboz&clarifai/ai21.complete.Jurassic2-Largez0clarifai/cohere.generate.cohere-generate-commandz1clarifai/wizardlm.generate.wizardCoder-Python-34Bz'clarifai/wizardlm.generate.wizardLM-70Bz*clarifai/tiiuae.falcon.falcon-40b-instructz<clarifai/togethercomputer.RedPajama.RedPajama-INCITE-7B-Chatz clarifai/gcp.generate.code-geckoz clarifai/gcp.generate.code-bisonz1clarifai/mistralai.completion.mistral-7B-OpenOrcaz5clarifai/mistralai.completion.openHermes-2-mistral-7Bz'clarifai/wizardlm.generate.wizardLM-13Bz4clarifai/huggingface-research.zephyr.zephyr-7B-alphaz*clarifai/wizardlm.generate.wizardCoder-15Bz*clarifai/microsoft.text-generation.phi-1_5z)clarifai/databricks.Dolly-v2.dolly-v2-12bzclarifai/bigcode.code.StarCoderz,clarifai/salesforce.xgen.xgen-7b-8k-instructz%clarifai/mosaicml.mpt.mpt-7b-instructz+clarifai/anthropic.completion.claude-3-opusz-clarifai/anthropic.completion.claude-3-sonnetz$clarifai/gcp.generate.gemini-1_5-prozclarifai/gcp.generate.imagen-2z=clarifai/salesforce.blip.general-english-image-caption-blip-2clarifai_models)zmeta-llama/Llama-2-7b-hfzmeta-llama/Llama-2-7b-chat-hfzmeta-llama/Llama-2-13b-hfzmeta-llama/Llama-2-13b-chat-hfzmeta-llama/Llama-2-70b-hfzmeta-llama/Llama-2-70b-chat-hfzmeta-llama/Llama-2-7bzmeta-llama/Llama-2-7b-chatzmeta-llama/Llama-2-13bzmeta-llama/Llama-2-13b-chatzmeta-llama/Llama-2-70bzmeta-llama/Llama-2-70b-chathuggingface_modelszempower/empower-functionszempower/empower-functions-small)z!togethercomputer/llama-2-70b-chatztogethercomputer/llama-2-70bztogethercomputer/LLaMA-2-7B-32Kz(togethercomputer/Llama-2-7B-32K-Instructztogethercomputer/llama-2-7bz$togethercomputer/falcon-40b-instructz#togethercomputer/falcon-7b-instructztogethercomputer/alpaca-7bzHuggingFaceH4/starchat-alphaztogethercomputer/CodeLlama-34bz'togethercomputer/CodeLlama-34b-Instructz%togethercomputer/CodeLlama-34b-Pythonzdefog/sqlcoderzNumbersStation/nsql-llama-2-7BzWizardLM/WizardCoder-15B-V1.0z$WizardLM/WizardCoder-Python-34B-V1.0z#NousResearch/Nous-Hermes-Llama2-13bzAustism/chronos-hermes-13bzupstage/SOLAR-0-70b-16bitzWizardLM/WizardLM-70B-V1.0together_ai_models)qvv0xeqq841o8w31dxrj3baseten_models)	zfeatherless-ai/Qwerky-72Bzfeatherless-ai/Qwerky-QwQ-32BQwen/Qwen2.5-72B-Instructall-hands/openhands-lm-32b-v0.1Qwen/Qwen2.5-Coder-32B-Instructdeepseek-ai/DeepSeek-V3-0324z)mistralai/Mistral-Small-24B-Instruct-2501$mistralai/Mistral-Nemo-Instruct-2407%ProdeusUnity/Stellar-Odyssey-12b-v0.0featherless_ai_models)&deepseek-ai/DeepSeek-R1-0528r)  zdeepseek-ai/DeepSeek-V3zdeepseek-ai/DeepSeek-R1z)deepseek-ai/DeepSeek-R1-Distill-Llama-70Bzgoogle/gemma-2-2b-itzgoogle/gemma-2-9b-it-fast!meta-llama/Llama-3.3-70B-Instructz&meta-llama/Meta-Llama-3.1-70B-Instructz%meta-llama/Meta-Llama-3.1-8B-Instructz'meta-llama/Meta-Llama-3.1-405B-Instructz NousResearch/Hermes-3-Llama-405Bzmicrosoft/phi-4r*  zmistralai/Devstral-Small-2505moonshotai/Kimi-K2-Instructz'nvidia/Llama-3_1-Nemotron-Ultra-253B-v1z&nvidia/Llama-3_3-Nemotron-Super-49B-v1openai/gpt-oss-120bopenai/gpt-oss-20b#Qwen/Qwen3-Coder-480B-A35B-Instruct"Qwen/Qwen3-235B-A22B-Instruct-2507zQwen/Qwen3-235B-A22BzQwen/Qwen3-30B-A3BzQwen/Qwen3-32BzQwen/Qwen3-14BzQwen/Qwen3-4B-fastzQwen/Qwen2.5-Coder-7Br(  r&  zQwen/QwQ-32Bz Qwen/Qwen3-30B-A3B-Thinking-2507z Qwen/Qwen3-30B-A3B-Instruct-2507zai-org/GLM-4.5zzai-org/GLM-4.5-Airzaaditya/Llama3-OpenBioLLM-70Br+  r'  nebius_models)
z
qwen-turboz	qwen-pluszqwen-maxzqwen-turbo-latestzqwen-plus-latestzqwen-max-latestzqwq-32bzqwen3-235b-a22bz	qwen3-32bzqwen3-30b-a3bdashscope_models)zBAAI/bge-en-iclzBAAI/bge-multilingual-gemma2zintfloat/e5-mistral-7b-instructnebius_embedding_models)r0  r1  r4  r3  r2  z"Qwen/Qwen3-235B-A22B-Thinking-2507r/  z meta-llama/Llama-3.1-8B-Instructr.  z)meta-llama/Llama-4-Scout-17B-16E-Instructzdeepseek-ai/DeepSeek-V3.1r-  r)  zmicrosoft/Phi-4-mini-instructWANDB_MODELS)	r   r   r   amazonmetallamar   novadeepseek_r1)r   r9  
twelvelabs)&zqwen.qwen3-coder-480b-a35b-v1:0zqwen.qwen3-235b-a22b-2507-v1:0zqwen.qwen3-coder-30b-a3b-v1:0zqwen.qwen3-32b-v1:0zdeepseek.v3-v1:0zopenai.gpt-oss-20b-1:0zopenai.gpt-oss-120b-1:0z)anthropic.claude-sonnet-4-5-20250929-v1:0z'anthropic.claude-opus-4-1-20250805-v1:0z%anthropic.claude-opus-4-20250514-v1:0z'anthropic.claude-sonnet-4-20250514-v1:0z)anthropic.claude-3-7-sonnet-20250219-v1:0z(anthropic.claude-3-5-haiku-20241022-v1:0z)anthropic.claude-3-5-sonnet-20241022-v2:0z)anthropic.claude-3-5-sonnet-20240620-v1:0z%anthropic.claude-3-opus-20240229-v1:0z'anthropic.claude-3-sonnet-20240229-v1:0z&anthropic.claude-3-haiku-20240307-v1:0zanthropic.claude-v2zanthropic.claude-v2:1zanthropic.claude-v1zanthropic.claude-instant-v1zai21.jamba-instruct-v1:0zai21.jamba-1-5-mini-v1:0zai21.jamba-1-5-large-v1:0meta.llama3-70b-instruct-v1:0zmeta.llama3-8b-instruct-v1:0zmeta.llama3-1-8b-instruct-v1:0zmeta.llama3-1-70b-instruct-v1:0z meta.llama3-1-405b-instruct-v1:0r?  zmistral.mistral-large-2407-v1:0zmistral.mistral-large-2402-v1:0zmistral.mistral-small-2402-v1:0zmeta.llama3-2-1b-instruct-v1:0zmeta.llama3-2-3b-instruct-v1:0zmeta.llama3-2-11b-instruct-v1:0zmeta.llama3-2-90b-instruct-v1:0ztext-embedding-ada-002open_ai_embedding_models)z
embed-v4.0zembed-english-v3.0zembed-english-light-v3.0zembed-multilingual-v3.0zembed-english-v2.0zembed-english-light-v2.0zembed-multilingual-v2.0cohere_embedding_models)zamazon.titan-embed-text-v1zcohere.embed-english-v3zcohere.embed-multilingual-v3z!twelvelabs.marengo-embed-2-7-v1:0bedrock_embedding_modelsa  {{ bos_token }}{% for message in messages %}{% if (message['role'] == 'user') != (loop.index0 % 2 == 0) %}{{ raise_exception('Conversation roles must alternate user/assistant/user/assistant/...') }}{% endif %}{% if message['role'] == 'user' %}{{ '[INST] ' + message['content'] + ' [/INST]' }}{% elif message['role'] == 'assistant' %}{{ message['content'] + eos_token + ' ' }}{% else %}{{ raise_exception('Only user and assistant roles are supported!') }}{% endif %}{% endfor %}z<s>z</s>)chat_template	bos_token	eos_tokensuccess)	tokenizerstatusa\  {% set loop_messages = messages %}{% for message in loop_messages %}{% set content = '<|start_header_id|>' + message['role'] + '<|end_header_id|>

'+ message['content'] | trim + '<|eot_id|>' %}{% if loop.index0 == 0 %}{% set content = bos_token + content %}{% endif %}{{ content }}{% endfor %}{{ '<|start_header_id|>assistant<|end_header_id|>

' }}z<|begin_of_text|>TF
AddedTokenu   <｜begin▁of▁sentence｜>)__typecontentlstrip
normalizedrstripsingle_wordu   <｜end▁of▁sentence｜>i @  LlamaTokenizerFastu  {% if not add_generation_prompt is defined %}{% set add_generation_prompt = false %}{% endif %}{% set ns = namespace(is_first=false, is_tool=false, is_output_first=true, system_prompt='') %}{%- for message in messages %}{%- if message['role'] == 'system' %}{% set ns.system_prompt = message['content'] %}{%- endif %}{%- endfor %}{{bos_token}}{{ns.system_prompt}}{%- for message in messages %}{%- if message['role'] == 'user' %}{%- set ns.is_tool = false -%}{{'<｜User｜>' + message['content']}}{%- endif %}{%- if message['role'] == 'assistant' and message['content'] is none %}{%- set ns.is_tool = false -%}{%- for tool in message['tool_calls']%}{%- if not ns.is_first %}{{'<｜Assistant｜><｜tool▁calls▁begin｜><｜tool▁call▁begin｜>' + tool['type'] + '<｜tool▁sep｜>' + tool['function']['name'] + '\n' + '```json' + '\n' + tool['function']['arguments'] + '\n' + '```' + '<｜tool▁call▁end｜>'}}{%- set ns.is_first = true -%}{%- else %}{{'\n' + '<｜tool▁call▁begin｜>' + tool['type'] + '<｜tool▁sep｜>' + tool['function']['name'] + '\n' + '```json' + '\n' + tool['function']['arguments'] + '\n' + '```' + '<｜tool▁call▁end｜>'}}{{'<｜tool▁calls▁end｜><｜end▁of▁sentence｜>'}}{%- endif %}{%- endfor %}{%- endif %}{%- if message['role'] == 'assistant' and message['content'] is not none %}{%- if ns.is_tool %}{{'<｜tool▁outputs▁end｜>' + message['content'] + '<｜end▁of▁sentence｜>'}}{%- set ns.is_tool = false -%}{%- else %}{% set content = message['content'] %}{% if '</think>' in content %}{% set content = content.split('</think>')[-1] %}{% endif %}{{'<｜Assistant｜>' + content + '<｜end▁of▁sentence｜>'}}{%- endif %}{%- endif %}{%- if message['role'] == 'tool' %}{%- set ns.is_tool = true -%}{%- if ns.is_output_first %}{{'<｜tool▁outputs▁begin｜><｜tool▁output▁begin｜>' + message['content'] + '<｜tool▁output▁end｜>'}}{%- set ns.is_output_first = false %}{%- else %}{{'\n<｜tool▁output▁begin｜>' + message['content'] + '<｜tool▁output▁end｜>'}}{%- endif %}{%- endif %}{%- endfor -%}{% if ns.is_tool %}{{'<｜tool▁outputs▁end｜>'}}{% endif %}{% if add_generation_prompt and not ns.is_tool %}{{'<｜Assistant｜><think>\n'}}{% endif %})add_bos_tokenadd_eos_tokenrD  clean_up_tokenization_spacesrE  legacymodel_max_length	pad_tokensp_model_kwargs	unk_tokentokenizer_classrC  )z"mistralai/Mistral-7B-Instruct-v0.1z#meta-llama/Meta-Llama-3-8B-Instructz#deepseek-r1/deepseek-r1-7b-instruct)r   lengthr   content_filternull"HUMANLOOP_PROMPT_CACHE_TTL_SECONDS<   json_tool_callz
2019-07-072PROMETHEUS_BUDGET_METRICS_REFRESH_INTERVAL_MINUTES!CLOUDZERO_EXPORT_INTERVAL_MINUTESmcp_toolMAXIMUM_TRACEBACK_LINES_TO_LOGzx-litellm-disable-callbackslitellm_metadatametadatalitellm_truncatedMAX_SPENDLOG_ROWS_TO_QUERYi@B DEFAULT_SOFT_BUDGETg      I@z%LiteLLM Virtual Key user_api_key_hash)zagents/zknowledgebases/zflows/zretrieveAndGenerate/zrerank/zgenerateQuery/zoptimize-prompt/z/mcp"BATCH_STATUS_POLL_INTERVAL_SECONDSBATCH_STATUS_POLL_MAX_ATTEMPTSHEALTH_CHECK_TIMEOUT_SECONDSzlitellm-internal-health-checkzlitellm-clilitellm_internal_jobsLITELLM_KEY_ROTATION_ENABLEDfalse+LITELLM_KEY_ROTATION_CHECK_INTERVAL_SECONDSiQ zlitellm-dashboarddefault_user_idzlitellm-session-tokendb_spend_update_jobprometheus_emit_budget_metricscloudzero_export_usage_data"CLOUDZERO_MAX_FETCHED_DATA_RECORDSiP  spend_log_cleanupSPEND_LOG_RUN_LOOPSi  SPEND_LOG_CLEANUP_BATCH_SIZE!DEFAULT_CRON_JOB_LOCK_TTL_SECONDS!PROXY_BUDGET_RESCHEDULER_MIN_TIMEiU  PROXY_BATCH_POLLING_INTERVAL!PROXY_BUDGET_RESCHEDULER_MAX_TIMEi]  PROXY_BATCH_WRITE_ATDEFAULT_HEALTH_CHECK_INTERVAL)PROMETHEUS_FALLBACK_STATS_SEND_TIME_HOURSDEFAULT_MODEL_CREATED_AT_TIMEijNc DEFAULT_SLACK_ALERTING_THRESHOLDMAX_TEAM_LIST_LIMIT-DEFAULT_PROMPT_INJECTION_SIMILARITY_THRESHOLDgffffff?LENGTH_OF_LITELLM_GENERATED_KEYSECRET_MANAGER_REFRESH_INTERVAL)default_internal_user_paramspublic_model_groupspublic_model_groups_linkszui-token-DEFAULT_MANAGEMENT_OBJECT_IN_MEMORY_CACHE_TTL).r   tokenkeysecretpasswordauth
credentialOPENAI_API_KEYANTHROPIC_API_KEYAZURE_API_KEYCOHERE_API_KEYREPLICATE_API_KEYHUGGINGFACE_API_KEYTOGETHERAI_API_KEYCLOUDFLARE_API_KEYBASETEN_KEYOPENROUTER_KEYCOMETAPI_KEYDATAROBOT_API_TOKENFIREWORKS_API_KEYFIREWORKS_AI_API_KEYFIREWORKSAI_API_KEYOVHCLOUD_API_KEYdatabase_url	redis_urlconnection_string
master_keyLITELLM_MASTER_KEY
auth_token	jwt_tokenprivate_keySLACK_WEBHOOK_URLwebhook_urlLANGFUSE_SECRET_KEYSMTP_PASSWORDSMTP_USERNAMEemail_passwordaws_access_keyaws_secret_keygcp_credentialsazure_credentialsHCP_VAULT_TOKENCIRCLE_OIDC_TOKEN	proxy_url	proxy_keyenvironment_variables)user_idemailphoneaddress
ip_addressSMTP_SENDER_EMAILTEST_EMAIL_ADDRESS$COROUTINE_CHECKER_MAX_SIZE_IN_MEMORY)ostypingr   r   strgetenvr   intr   r	   r
   r   r   r   r   r   SQS_SEND_MESSAGE_ACTIONSQS_API_VERSIONr   r   r   floatr   r   r   r   r   r   r   r    r"   r#   r$   r%   r&   r'   r(   r*   r+   r,   r-   r.   r/   _DEFAULT_TTL_FOR_HTTPX_CLIENTSREDIS_UPDATE_BUFFER_KEY#REDIS_DAILY_SPEND_UPDATE_BUFFER_KEY(REDIS_DAILY_TEAM_SPEND_UPDATE_BUFFER_KEY'REDIS_DAILY_TAG_SPEND_UPDATE_BUFFER_KEYr4   r5   r6   r7   r8   r9   r;   r=   r?   r@   rB   rD   rF   rG   rH   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rX   rY   rZ   r[   r\   r]   r_   r`   ra   rc   rd   re   rg   rh   ri   rj   rl   rn   rp   rr   rt   rv   rw   rx   ry   rz   r|   __annotations__r}   r~   r   r   r   r   r   r   REDACTED_BY_LITELM_STRINGr   r   "ANTHROPIC_WEB_SEARCH_TOOL_MAX_USESDEFAULT_IMAGE_ENDPOINT_MODELLITELLM_CHAT_PROVIDERS<LITELLM_EMBEDDING_PROVIDERS_SUPPORTING_INPUT_ARRAY_OF_TOKENSOPENAI_CHAT_COMPLETION_PARAMSOPENAI_TRANSCRIPTION_PARAMSOPENAI_EMBEDDING_PARAMSDEFAULT_EMBEDDING_PARAM_VALUES$DEFAULT_CHAT_COMPLETION_PARAM_VALUESr  r  r  r  setr  r  r   empower_modelsr!  r%  r,  r5  r6  r7  r8   BEDROCK_INVOKE_PROVIDERS_LITERAL#BEDROCK_EMBEDDING_PROVIDERS_LITERALBEDROCK_CONVERSE_MODELSr@  rA  rB  known_tokenizer_configOPENAI_FINISH_REASONSr]  RESPONSE_FORMAT_TOOL_NAMEAZURE_STORAGE_MSFT_VERSIONr`  ra  MCP_TOOL_NAME_PREFIXrc  X_LITELLM_DISABLE_CALLBACKSLITELLM_METADATA_FIELDOLD_LITELLM_METADATA_FIELDLITELLM_TRUNCATED_PAYLOAD_FIELDrg  rh  (RATE_LIMIT_ERROR_MESSAGE_FOR_VIRTUAL_KEY)BEDROCK_AGENT_RUNTIME_PASS_THROUGH_ROUTESBASE_MCP_ROUTEri  rj  rk  ,LITTELM_INTERNAL_HEALTH_SERVICE_ACCOUNT_NAME LITTELM_CLI_SERVICE_ACCOUNT_NAME*LITELLM_INTERNAL_JOBS_SERVICE_ACCOUNT_NAMErm  ro  UI_SESSION_TOKEN_TEAM_IDLITELLM_PROXY_ADMIN_NAMELITELLM_CLI_SOURCE_IDENTIFIER LITELLM_CLI_SESSION_TOKEN_PREFIXDB_SPEND_UPDATE_JOB_NAME'PROMETHEUS_EMIT_BUDGET_METRICS_JOB_NAME$CLOUDZERO_EXPORT_USAGE_DATA_JOB_NAMErt  SPEND_LOG_CLEANUP_JOB_NAMErv  rw  rx  ry  rz  r{  r|  r}  r~  r  r  r  r  r  r  "LITELLM_SETTINGS_SAFE_DB_OVERRIDESSPECIAL_LITELLM_AUTH_TOKENr  SENTRY_DENYLISTSENTRY_PII_DENYLISTr  r  r  r
  <module>r     s]   					                &)cBI3Y??' ' # s929%;Q??@@ S#7==>> !$YRY/OQR%S%S!T!T $'CBI1266% % ! IBI&=sCCDD %(SBI2B77& & " %(CBI1155% % ! YRY'?EEFF ' c)")$91==>> C		*Es K KLL 25#BI?DD3 3 / %*EBI1377% % ! S#7>>?? IBI&=qAABB !c)"),I1"M"MNN  #IBI.Mq$Q$Q R R $'CBI1155% % ! +.#BI7;;+ + '  C		*Es K KLL c)")$93??@@ s929%;SAABB *-#BI7>>+ + ' /2cBI;TBB/ / + 473BI@!DD4 4 0
 EHCBIQSTUUE E A CF#BIOQTUUC C ? JMBIPRU J J F 473BI@#FF4 4 0 03sBI<dCC0 0 , 36#BI?FF3 3 / 14BI=tDD1 1 - "cBI+R00   "&  8 &I #+S (*Q '!$YRY/OQT%U%U!V!V 3yry)CUKKLL "%#BI/66# #  $'3BI0$77$ $   UBI"D))   YRY/4455YRY/3344#ibi 126677YRY/5566&)cBI3R88' ' # #&#ibi0QST&U&U"V"V  S+G!K!KLL !$YRY/OQR%S%S!T!T +.3BI8"==, , ( 03sBI<bAA0 0 , %(CBI1377% % ! $'3BI0$77$ $   YRY/5566#ibi 137788',uBI4jAA( ( $
 ).BI5s;;) ) % +0%BI14 + + '
 /4eBI5s / / +
 05uBI6 0 0 ,
 */BI0# * * &
 !5+Ev!N!NOO !$BI.44" "  !S+G!L!LMM eIBI&;SAABB %		"3S99::	yry4((	)	)BI%q))   !5BI($//   #&#ibi0QSV&W&W"X"X uYRY'=sCCDD  #IBI.Mq$Q$Q R R  SBI*B//    #s929-KT#R#RSS !$YRY/OQU%V%V!W!W #ibi(A2FFGG "'%BI/55# #  %(CBI1488% % ! #ibi 115566#ibi 1155663yry!3R8899 3yry!3R8899 3yry!3R8899 C		"5s;;<< !c)"),I3"O"OPP !c)"),I3"O"OPP yry)A4HHII S#7>>?? $uYRY/Mt%T%TUU *-#BI7==+ + ' !$IBI.Mt$T$T U U yry):DAABB B B B&  & & &&  & & &).BI6AA* * & IBI&=rBBCC YRY'?EEFF 3yry!3Q7788 C		"5r::;; C		"5r::;; 0 #&3BI0"55$ $   ,529.0G, , ( & & "
  * S S S j@ @ @ <(! (! (! T    DCC "00/000"	" " " &(&(T&( 4&( T	&(
 &( d&( d&( D&( $&( T&( $&( $&( T&( &( &(  $!&(" D#&( &($ T%&(& 2'&(( t)&(* D+&(, T-&(. 4/&(0 41&(2 3&(4 D5&(6 T7&(8 49&(: 4;&(< 4=&(> T?&(@ dA&(B C&(D E&( &(F K&( &( &( $P% % % T   >*% *% *% T * * *X   ,T   "              #   " s@ @ @B B B B BJ #    C     #)  #    C   D c       !S
 
 
  s    S2 2 24 4s 4 4 4l     #     #s          C   c   @ $+
$   '.' #' ' ' T !$%=$> ? ? # ? ? ?"s  
  
   
 
 
 !$  ! ! #    }
 

 + + @,
 

 , , ""&:"$  -2&8"$   %&8"$   "3 o#C"
 "
F I%, %,#7 7 t VUU %(SBI2B77& & " -  * 58SBIBAFF6 6 2 %(CBI1266% % ! " !$YRY/OQT%U%U!V!V  < + ' "5  !SBI*I66   eBI#T**   ,S (- - - ) %(SBI2D99& & " "%BI.33" "   #sBI,b11     0O ,#0  -D *  )ry)GQQ .1c)")<ikp2q2q.r.r +. ,  !. #:   1 *J ''D $%(SBI2E::& & " 1 c)")$93??@@ "s929-KT#R#RSS $'CBI1266% % ! %(CBI1377% % !  #s929-KT#R#RSS $'CBI1377% % ! s929%;R@@AA  #BI-s33! !  -0CBI91==- - ) !$BI-z::! !  $'3BI0#66$ $   c)")$92>>?? 05BI=sCC1 1 - #&#ibi0QSU&V&V"W"W "%#BI/77# # & & & "
 )\ 03BI=rBB1 1 -
5 5 5l    (+sBI4d;;( ( $ $ $r  