From 2e0dae608a35f0f17116bb67736915171b23f747 Mon Sep 17 00:00:00 2001 From: Krrish Dholakia Date: Wed, 12 Jun 2024 10:57:40 -0700 Subject: [PATCH] docs(bedrock.md): add provider specific param info to bedrock docs --- docs/my-website/docs/providers/bedrock.md | 135 ++++++++++++++++++++-- 1 file changed, 127 insertions(+), 8 deletions(-) diff --git a/docs/my-website/docs/providers/bedrock.md b/docs/my-website/docs/providers/bedrock.md index ffe258e972a..38870cffb16 100644 --- a/docs/my-website/docs/providers/bedrock.md +++ b/docs/my-website/docs/providers/bedrock.md @@ -144,16 +144,135 @@ print(response) +## Set temperature, top p, etc. + + + + +```python +import os +from litellm import completion + +os.environ["AWS_ACCESS_KEY_ID"] = "" +os.environ["AWS_SECRET_ACCESS_KEY"] = "" +os.environ["AWS_REGION_NAME"] = "" + +response = completion( + model="bedrock/anthropic.claude-3-sonnet-20240229-v1:0", + messages=[{ "content": "Hello, how are you?","role": "user"}], + temperature=0.7, + top_p=1 +) +``` + + + +**Set on yaml** + +```yaml +model_list: + - model_name: bedrock-claude-v1 + litellm_params: + model: bedrock/anthropic.claude-instant-v1 + temperature: + top_p: +``` + +**Set on request** + +```python + +import openai +client = openai.OpenAI( + api_key="anything", + base_url="http://0.0.0.0:4000" +) + +# request sent to model set on litellm proxy, `litellm --model` +response = client.chat.completions.create(model="bedrock-claude-v1", messages = [ + { + "role": "user", + "content": "this is a test request, write a short poem" + } +], +temperature=0.7, +top_p=1 +) + +print(response) + +``` + + + + +## Pass provider-specific params + +If you pass a non-openai param to litellm, we'll assume it's provider-specific and send it as a kwarg in the request body. [See more](../completion/input.md#provider-specific-params) + + + + +```python +import os +from litellm import completion + +os.environ["AWS_ACCESS_KEY_ID"] = "" +os.environ["AWS_SECRET_ACCESS_KEY"] = "" +os.environ["AWS_REGION_NAME"] = "" + +response = completion( + model="bedrock/anthropic.claude-3-sonnet-20240229-v1:0", + messages=[{ "content": "Hello, how are you?","role": "user"}], + top_k=1 # 👈 PROVIDER-SPECIFIC PARAM +) +``` + + + +**Set on yaml** + +```yaml +model_list: + - model_name: bedrock-claude-v1 + litellm_params: + model: bedrock/anthropic.claude-instant-v1 + top_k: 1 # 👈 PROVIDER-SPECIFIC PARAM +``` + +**Set on request** + +```python + +import openai +client = openai.OpenAI( + api_key="anything", + base_url="http://0.0.0.0:4000" +) + +# request sent to model set on litellm proxy, `litellm --model` +response = client.chat.completions.create(model="bedrock-claude-v1", messages = [ + { + "role": "user", + "content": "this is a test request, write a short poem" + } +], +temperature=0.7, +extra_body={ + top_k=1 # 👈 PROVIDER-SPECIFIC PARAM +} +) + +print(response) + +``` + + + + ## Usage - Function Calling -:::info - -Claude returns it's output as an XML Tree. [Here is how we translate it](https://github.com/BerriAI/litellm/blob/49642a5b00a53b1babc1a753426a8afcac85dbbe/litellm/llms/prompt_templates/factory.py#L734). - -You can see the raw response via `response._hidden_params["original_response"]`. - -Claude hallucinates, e.g. returning the list param `value` as `\napple\nbanana\n` or `\n\napple\nbanana\n\n`. -::: +LiteLLM uses Bedrock's Converse API for making tool calls ```python from litellm import completion