From c5b2d4a529219a33674f585d535de9b2bf7afca8 Mon Sep 17 00:00:00 2001 From: Krrish Dholakia Date: Thu, 1 May 2025 14:34:16 -0700 Subject: [PATCH] docs(document_understanding.md): clarify 'format' param usage --- .../docs/completion/document_understanding.md | 91 +++++++++++++++++++ 1 file changed, 91 insertions(+) diff --git a/docs/my-website/docs/completion/document_understanding.md b/docs/my-website/docs/completion/document_understanding.md index acebb2e1603..04047a5909a 100644 --- a/docs/my-website/docs/completion/document_understanding.md +++ b/docs/my-website/docs/completion/document_understanding.md @@ -187,6 +187,97 @@ curl -X POST 'http://0.0.0.0:4000/chat/completions' \ +## Specifying format + +To specify the format of the document, you can use the `format` parameter. + + + + + +```python +from litellm.utils import supports_pdf_input, completion + +# set aws credentials +os.environ["AWS_ACCESS_KEY_ID"] = "" +os.environ["AWS_SECRET_ACCESS_KEY"] = "" +os.environ["AWS_REGION_NAME"] = "" + + +# pdf url +file_url = "https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf" + +# model +model = "bedrock/anthropic.claude-3-5-sonnet-20240620-v1:0" + +file_content = [ + {"type": "text", "text": "What's this file about?"}, + { + "type": "file", + "file": { + "file_id": file_url, + "format": "application/pdf", + } + }, +] + + +if not supports_pdf_input(model, None): + print("Model does not support image input") + +response = completion( + model=model, + messages=[{"role": "user", "content": file_content}], +) +assert response is not None +``` + + + +1. Setup config.yaml + +```yaml +model_list: + - model_name: bedrock-model + litellm_params: + model: bedrock/anthropic.claude-3-5-sonnet-20240620-v1:0 + aws_access_key_id: os.environ/AWS_ACCESS_KEY_ID + aws_secret_access_key: os.environ/AWS_SECRET_ACCESS_KEY + aws_region_name: os.environ/AWS_REGION_NAME +``` + +2. Start the proxy + +```bash +litellm --config /path/to/config.yaml +``` + +3. Test it! + +```bash +curl -X POST 'http://0.0.0.0:4000/chat/completions' \ +-H 'Content-Type: application/json' \ +-H 'Authorization: Bearer sk-1234' \ +-d '{ + "model": "bedrock-model", + "messages": [ + {"role": "user", "content": [ + {"type": "text", "text": "What's this file about?"}, + { + "type": "file", + "file": { + "file_id": "https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf", + "format": "application/pdf", + } + } + ]}, + ] +}' +``` + + + + ## Checking if a model supports pdf input