Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.
Vision-language models accept images alongside text and reply in natural language, structured JSON, or tool calls. For the current list of vision-capable models, see the serverless catalog or the dedicated model inference catalog.
Pass a messages array where the user content is a list mixing text and image_url blocks. The model treats them as a single multimodal prompt and replies with text in choices[0].message.content. The example below points the model at an image of a Trello board and asks it to describe the UI in detail. The response streams back token-by-token.
from together import Togetherclient = Together()getDescriptionPrompt = "You are a UX/UI designer. Describe the attached screenshot or UI mockup in detail. I will feed in the output you give me to a coding model that will attempt to recreate this mockup, so please think step by step and describe the UI in detail. Pay close attention to background color, text color, font size, font family, padding, margin, border, etc. Match the colors and sizes exactly. Make sure to mention every part of the screenshot including any headers, footers, etc. Use the exact text from the screenshot."imageUrl = "https://napkinsdev.s3.us-east-1.amazonaws.com/next-s3-uploads/d96a3145-472d-423a-8b79-bca3ad7978dd/trello-board.png"stream = client.chat.completions.create( model="moonshotai/Kimi-K3", max_tokens=2048, messages=[ { "role": "user", "content": [ {"type": "text", "text": getDescriptionPrompt}, {"type": "image_url", "image_url": {"url": imageUrl}}, ], } ], stream=True,)# Kimi K3 is reasoning-default. Reasoning tokens stream first, then content.for chunk in stream: if not chunk.choices: continue delta = chunk.choices[0].delta if getattr(delta, "reasoning", None): print(delta.reasoning, end="", flush=True) if getattr(delta, "content", None): print(delta.content, end="", flush=True)
import Together from "together-ai";const together = new Together();let getDescriptionPrompt = `You are a UX/UI designer. Describe the attached screenshot or UI mockup in detail. I will feed in the output you give me to a coding model that will attempt to recreate this mockup, so please think step by step and describe the UI in detail.- Pay close attention to background color, text color, font size, font family, padding, margin, border, etc. Match the colors and sizes exactly.- Make sure to mention every part of the screenshot including any headers, footers, etc.- Use the exact text from the screenshot.`;let imageUrl = "https://napkinsdev.s3.us-east-1.amazonaws.com/next-s3-uploads/d96a3145-472d-423a-8b79-bca3ad7978dd/trello-board.png";async function main() { const stream = await together.chat.completions.create({ model: "moonshotai/Kimi-K3", temperature: 0.2, stream: true, max_tokens: 2048, messages: [ { role: "user", // @ts-expect-error Need to fix the TypeScript library type content: [ { type: "text", text: getDescriptionPrompt }, { type: "image_url", image_url: { url: imageUrl, }, }, ], }, ], }); for await (const chunk of stream) { process.stdout.write(chunk.choices[0]?.delta?.content || ""); }}main();
curl -X POST "https://api.together.ai/v1/chat/completions" \ -H "Authorization: Bearer $TOGETHER_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "moonshotai/Kimi-K3", "max_tokens": 2048, "messages": [ { "role": "user", "content": [ { "type": "text", "text": "You are a UX/UI designer. Describe the attached screenshot or UI mockup in detail. I will feed in the output you give me to a coding model that will attempt to recreate this mockup, so please think step by step and describe the UI in detail. Pay close attention to background color, text color, font size, font family, padding, margin, border, etc. Match the colors and sizes exactly. Make sure to mention every part of the screenshot including any headers, footers, etc. Use the exact text from the screenshot." }, { "type": "image_url", "image_url": { "url": "https://napkinsdev.s3.us-east-1.amazonaws.com/next-s3-uploads/d96a3145-472d-423a-8b79-bca3ad7978dd/trello-board.png" } } ] } ] }'
Sample model output
The attached screenshot appears to be a Trello board, a project management tool used for organizing tasks and projects into boards. Below is a detailed breakdown of the UI:**Header**-----------------* A blue bar spanning the top of the page* White text reading "Trello" in the top-left corner* White text reading "Workspaces", "Recent", "Starred", "Templates", and "Create" in the top-right corner, separated by small white dots* A white box with a blue triangle and the word "Board" inside it**Top Navigation Bar**----------------------* A blue bar with white text reading "Project A"* A dropdown menu with options "Workspace visible" and "Board"* A search bar with a magnifying glass icon**Main Content**-----------------* Three columns of cards with various tasks and projects* Each column has a header with a title* Cards are white with gray text and a blue border* Each card has a checkbox, a title, and a description* Some cards have additional details such as a yellow or green status indicator, a due date, and comments**Footer**------------* A blue bar with white text reading "Add a card"* A button to add a new card to the board**Color Scheme**-----------------* Blue and white are the primary colors used in the UI* Yellow and green are used as status indicators* Gray is used for text and borders**Font Family**----------------* The font family used throughout the UI is clean and modern, with a sans-serif font**Iconography**----------------* The UI features several icons, including: + A magnifying glass icon for the search bar + A triangle icon for the "Board" dropdown menu + A checkbox icon for each card + A status indicator icon (yellow or green) + A comment icon (a speech bubble)**Layout**------------* The UI is divided into three columns: "To Do", "In Progress", and "Done"* Each column has a header with a title* Cards are arranged in a vertical list within each column* The cards are spaced evenly apart, with a small gap between each card**Overall Design**-------------------* The UI is clean and modern, with a focus on simplicity and ease of use* The use of blue and white creates a sense of calmness and professionalism* The icons and graphics are simple and intuitive, making it easy to navigate the UIThis detailed breakdown provides a comprehensive understanding of the UI mockup, including its layout, color scheme, and components.
Vision models bill images as input tokens. Each image breaks into a tile grid (capped at 2×2 of 560-pixel tiles) and you pay 1,601 tokens per tile. There are only four possible image bills:
Image size (W × H)
Tile grid
Image tokens
Up to 559 × 559
1 × 1
1,601
Up to 559 tall, wider than 560
1 × 2
3,202
Taller than 560, up to 559 wide
2 × 1
3,202
Wider than 560 and taller than 560
2 × 2
6,404
A 4K screenshot and a 1280×720 photo are billed the same (both are 2×2). The image tokens are added to your prompt’s text tokens; output tokens are billed separately at the model’s standard rate.The exact formula:
{"docsConfig":{"theme":"almond","$schema":"https://mintlify.com/docs.json","name":"Together AI docs","description":"Documentation for the Together AI platform for inference and training.","colors":{"primary":"#FC4C02","light":"#FC4C02","dark":"#FC4C02"},"logo":{"light":"https://mintcdn.com/togetherai-52386018/gasg_XMR14P-KB11/logo/logo.svg?fit=max\u0026auto=format\u0026n=gasg_XMR14P-KB11\u0026q=85\u0026s=7ce2e810455d35e5916bb7253983eb98","dark":"https://mintcdn.com/togetherai-52386018/gasg_XMR14P-KB11/logo/logo-dark.svg?fit=max\u0026auto=format\u0026n=gasg_XMR14P-KB11\u0026q=85\u0026s=66f335ef8c544ef8949c4ac31557e054"},"favicon":"https://mintcdn.com/togetherai-52386018/-CXURtHnBCqpvt1N/favicon.svg?fit=max\u0026auto=format\u0026n=-CXURtHnBCqpvt1N\u0026q=85\u0026s=b3f5eec5b039ae68b2dd2a70ad0c66be","api":{"openapi":["openapi.yaml"],"playground":{"display":"simple"},"mdx":{"server":"https://api.together.ai/v1"}},"appearance":{"default":"system"},"background":{"color":{"light":"#FFFFFF","dark":"#050608"}},"navbar":{"links":[{"href":"https://api.together.ai/","label":"Sign in"}]},"footer":{"links":[{"header":"Company","items":[{"label":"About us","href":"https://www.together.ai/about"},{"label":"Careers","href":"https://www.together.ai/careers"}]},{"header":"Examples","items":[{"label":"Cookbooks","href":"https://github.com/togethercomputer/together-cookbook"},{"label":"Demo apps","href":"https://www.together.ai/demos"}]},{"header":"Resources","items":[{"label":"Pricing","href":"https://www.together.ai/pricing"},{"label":"Support","href":"https://support.together.ai/"}]},{"header":"Legal","items":[{"label":"Cookie policy","href":"https://www.together.ai/cookie-policy"},{"label":"Consent preferences","href":"https://docs.together.ai/"}]}]},"fonts":{"heading":{"family":"The Future","weight":500,"source":"fonts/the-future-medium.woff2","format":"woff2"},"body":{"family":"The Future","weight":400,"source":"fonts/the-future-regular.woff2","format":"woff2"}},"icons":{"library":"tabler"},"integrations":{"ga4":{"measurementId":"G-9Q7932WNVC"}},"contextual":{"options":["copy","view","add-mcp","cursor"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"togetherai-52386018","hasAudioNarration":false,"actualSubdomain":"togetherai-52386018","customDomains":["docs.together.ai"],"gitSource":{"type":"github","owner":"togethercomputer","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"contextualFeedback":{"allowEmail":true},"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aee78dc28a8d6004a6a0b47","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"default","tag":"API reference","count":190},{"language":"default","tag":"TOGETHER APIS","count":185},{"language":"default","tag":"Documentation","count":170},{"language":"default","tag":"Endpoints","count":47},{"language":"default","tag":"INFERENCE APIS","count":43},{"language":"default","tag":"Guides","count":42},{"language":"default","tag":"Post-training","count":35},{"language":"default","tag":"POST-TRAINING","count":32},{"language":"default","tag":"Containers","count":26},{"language":"default","tag":"GPU CLUSTERS","count":21}]},"assistantConfig":{"enableStarterQuestions":true,"enableContextualStarterQuestions":true,"deflection":{"enabled":true,"type":"link","email":"[email protected]","url":"https://support.together.ai/"}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"/* cyrillic-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 300;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD2OwG_TA.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 300;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD_OwG_TA.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 300;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD4OwG_TA.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 300;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD0OwG_TA.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 300;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD1OwG_TA.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 300;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD7OwE.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD2OwG_TA.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD_OwG_TA.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD4OwG_TA.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD0OwG_TA.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD1OwG_TA.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD7OwE.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD2OwG_TA.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD_OwG_TA.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD4OwG_TA.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD0OwG_TA.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD1OwG_TA.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD7OwE.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD2OwG_TA.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD_OwG_TA.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD4OwG_TA.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD0OwG_TA.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD1OwG_TA.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD7OwE.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 700;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD2OwG_TA.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 700;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD_OwG_TA.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 700;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD4OwG_TA.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 700;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD0OwG_TA.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 700;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD1OwG_TA.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 700;\n font-display: block;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4xD7OwE.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n@font-face{font-family:'The Future';src:url('/fonts/the-future-light.woff2') format('woff2');font-weight:300;font-style:normal;font-display:block}@font-face{font-family:'The Future';src:url('/fonts/the-future-bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:block}body{font-family:'The Future', ui-sans-serif, system-ui, sans-serif!important}code,pre,kbd,samp,.font-mono{font-family:\"JetBrains Mono\", \"SF Mono\", SFMono-Regular, ui-monospace, monospace!important}body :is(.tracking-tight){letter-spacing:0.02em}h1{letter-spacing:-0.5px!important;font-weight:500!important}h2,h3,h4,h5,h6{font-weight:500!important}#content-container>div{max-width:1080px}#topbar-cta-button>a{border-radius:9999px;background-color:white;border:1px solid #EDE9E8;padding:0.375rem 0.75rem;gap:0.625rem;height:32px}#topbar-cta-button>a>div>span{font-size:0.875rem;line-height:1.25rem;font-weight:500;text-align:left;color:#262626;\u0026::after{content:url(\"data:image/svg+xml,%3Csvg%20width%3D%225%22%20height%3D%2221%22%20viewBox%3D%220%200%205%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1.25%208.44531L3.75%2010.9453L1.25%2013.4453%22%20stroke%3D%22%23262626%22%20stroke-width%3D%221.25%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E\");display:inline-block;width:5px;height:21px;vertical-align:middle;margin-left:0.25rem;margin-top:-2px}}.prose:is(.dark *){color:#dadfe7}.method-nav-pill>span[class*=\"#3064E3\"]{background-color:#972E02!important}.method-nav-pill>span[class*=\"bg-blue\"]{background-color:rgba(151, 46, 2, 0.2)!important}.method-nav-pill>span[class*=\"text-blue\"]{color:#972E02!important}.dark .method-nav-pill>span[class*=\"text-blue\"]{color:#fc8050!important}.sidebar-group>button>div,.sidebar-group>div>div,nav [class*=\"group\"]>div:first-child,nav [class*=\"group\"]>button>div{font-family:'The Future', ui-sans-serif, system-ui, sans-serif!important}h1,h2,h3,h4,h5,h6,.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6,p,span,a,li,label,button,input,textarea,select,strong,b,.prose strong,.prose b{font-family:'The Future', ui-sans-serif, system-ui, sans-serif!important}strong,b,.prose strong,.prose b,.prose a{font-weight:500!important}pre,pre *,code span,.code-group pre,.code-group pre *,.code-group .code-block-background,.code-group .code-block-background *{font-family:\"JetBrains Mono\", \"SF Mono\", SFMono-Regular, ui-monospace, monospace!important}.columns.card-group>.card:has([data-component-part=\"card-image\"]){border:none!important;box-shadow:none!important;padding:0.25rem!important}.columns.card-group>.card:has([data-component-part=\"card-image\"]):hover{border-color:transparent!important}.columns.card-group>.card [data-component-part=\"card-image\"]{height:170px;width:100%;display:block;object-fit:cover;border-radius:12px;transition:transform 0.3s ease-out}.columns.card-group>.card:hover [data-component-part=\"card-image\"]{transform:scale(1.03)}.columns.card-group>.card:has([data-component-part=\"card-image\"]) [data-component-part=\"card-content-container\"]{padding-left:0!important;padding-right:0!important;padding-top:0.875rem!important}.sidebar-group a[target=\"_blank\"] svg,.sidebar-group a[href*=\"http\"] svg.flex-shrink-0{flex-shrink:0;margin-left:2px;width:10px;height:10px}"}],"page":{"pagePath":"docs/inference/vision/overview","slug":"/docs/inference/vision/overview","pageMetadata":{"title":"Use image inputs","description":"Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.","href":"/docs/inference/vision/overview"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Accordion,CodeBlock,CodeGroup,Heading,Table}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!CodeGroup)_missingMdxReference(`CodeGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Vision-language models accept images alongside text and reply in natural language, structured JSON, or tool calls. For the current list of vision-capable models, see the `,_jsx(_components.a,{href:`/docs/serverless/models`,children:`serverless catalog`}),` or the `,_jsx(_components.a,{href:`/docs/dedicated-endpoints/models`,children:`dedicated model inference catalog`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`basic-example`,children:`Basic example`}),`\n`,_jsxs(_components.p,{children:[`Pass a `,_jsx(_components.code,{children:`messages`}),` array where the user content is a list mixing `,_jsx(_components.code,{children:`text`}),` and `,_jsx(_components.code,{children:`image_url`}),` blocks. The model treats them as a single multimodal prompt and replies with text in `,_jsx(_components.code,{children:`choices[0].message.content`}),`. The example below points the model at an image of a Trello board and asks it to describe the UI in detail. The response streams back token-by-token.`]}),`\n`,_jsxs(CodeGroup,{children:[_jsx(CodeBlock,{filename:`Python`,numberOfLines:`32`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`32`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` together `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Together`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`client `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Together()`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`getDescriptionPrompt `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"You are a UX/UI designer. Describe the attached screenshot or UI mockup in detail. I will feed in the output you give me to a coding model that will attempt to recreate this mockup, so please think step by step and describe the UI in detail. Pay close attention to background color, text color, font size, font family, padding, margin, border, etc. Match the colors and sizes exactly. Make sure to mention every part of the screenshot including any headers, footers, etc. Use the exact text from the screenshot.\"`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`imageUrl `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://napkinsdev.s3.us-east-1.amazonaws.com/next-s3-uploads/d96a3145-472d-423a-8b79-bca3ad7978dd/trello-board.png\"`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`stream `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` client.chat.completions.create(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` model`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"moonshotai/Kimi-K3\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` max_tokens`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2048`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` messages`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"role\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"user\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"content\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: getDescriptionPrompt},`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"image_url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"image_url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: imageUrl}},`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` stream`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`True`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Kimi K3 is reasoning-default. Reasoning tokens stream first, then content.`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` chunk `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`in`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` stream:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` not`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` chunk.choices:`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` continue`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` delta `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` chunk.choices[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`].delta`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` getattr`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(delta, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"reasoning\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`None`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(delta.reasoning, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`end`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`flush`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`True`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` if`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` getattr`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(delta, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"content\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`None`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(delta.content, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`end`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`flush`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`True`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`]})})}),_jsx(CodeBlock,{filename:`TypeScript`,numberOfLines:`42`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`42`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` Together`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"together-ai\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` together`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` Together`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`let`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` getDescriptionPrompt`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\" `You are a UX/UI designer. Describe the attached screenshot or UI mockup in detail. I will feed in the output you give me to a coding model that will attempt to recreate this mockup, so please think step by step and describe the UI in detail.\"})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`- Pay close attention to background color, text color, font size, font family, padding, margin, border, etc. Match the colors and sizes exactly.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`- Make sure to mention every part of the screenshot including any headers, footers, etc.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`- Use the exact text from the screenshot.`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\"`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`let`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` imageUrl`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://napkinsdev.s3.us-east-1.amazonaws.com/next-s3-uploads/d96a3145-472d-423a-8b79-bca3ad7978dd/trello-board.png\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` function`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` main`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`() {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` stream`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` together`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`chat`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`completions`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`create`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` model:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"moonshotai/Kimi-K3\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` temperature:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 0.2`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` stream:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` max_tokens:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 2048`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` messages:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` role:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"user\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` // @ts-expect-error Need to fix the TypeScript library type`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` content:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`type:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`text:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` getDescriptionPrompt`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` type:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"image_url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` image_url:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` url:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` imageUrl`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` });`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` for`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` chunk`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` of`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` stream`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` process`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`stdout`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`write`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`chunk`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`choices`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]?.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`delta`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`?.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`content`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` ||`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`main`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`]})})}),_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`24`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`24`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.together.ai/v1/chat/completions\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$TOGETHER_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"model\": \"moonshotai/Kimi-K3\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"max_tokens\": 2048,`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"messages\": [`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"role\": \"user\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"content\": [`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"type\": \"text\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"text\": \"You are a UX/UI designer. Describe the attached screenshot or UI mockup in detail. I will feed in the output you give me to a coding model that will attempt to recreate this mockup, so please think step by step and describe the UI in detail. Pay close attention to background color, text color, font size, font family, padding, margin, border, etc. Match the colors and sizes exactly. Make sure to mention every part of the screenshot including any headers, footers, etc. Use the exact text from the screenshot.\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"type\": \"image_url\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"image_url\": {`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"url\": \"https://napkinsdev.s3.us-east-1.amazonaws.com/next-s3-uploads/d96a3145-472d-423a-8b79-bca3ad7978dd/trello-board.png\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})]}),`\n`,_jsx(Accordion,{title:`Sample model output`,id:`sample-model-output`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`71`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`71`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`The attached screenshot appears to be a Trello board, a project management tool used for organizing tasks and projects into boards. Below is a detailed breakdown of the UI:`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Header**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`-----------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* A blue bar spanning the top of the page`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* White text reading \"Trello\" in the top-left corner`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* White text reading \"Workspaces\", \"Recent\", \"Starred\", \"Templates\", and \"Create\" in the top-right corner, separated by small white dots`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* A white box with a blue triangle and the word \"Board\" inside it`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Top Navigation Bar**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`----------------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* A blue bar with white text reading \"Project A\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* A dropdown menu with options \"Workspace visible\" and \"Board\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* A search bar with a magnifying glass icon`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Main Content**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`-----------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Three columns of cards with various tasks and projects`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Each column has a header with a title`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Cards are white with gray text and a blue border`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Each card has a checkbox, a title, and a description`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Some cards have additional details such as a yellow or green status indicator, a due date, and comments`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Footer**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* A blue bar with white text reading \"Add a card\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* A button to add a new card to the board`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Color Scheme**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`-----------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Blue and white are the primary colors used in the UI`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Yellow and green are used as status indicators`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Gray is used for text and borders`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Font Family**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`----------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* The font family used throughout the UI is clean and modern, with a sans-serif font`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Iconography**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`----------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* The UI features several icons, including:`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` + A magnifying glass icon for the search bar`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` + A triangle icon for the \"Board\" dropdown menu`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` + A checkbox icon for each card`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` + A status indicator icon (yellow or green)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` + A comment icon (a speech bubble)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Layout**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* The UI is divided into three columns: \"To Do\", \"In Progress\", and \"Done\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Each column has a header with a title`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* Cards are arranged in a vertical list within each column`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* The cards are spaced evenly apart, with a small gap between each card`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`**Overall Design**`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`-------------------`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* The UI is clean and modern, with a focus on simplicity and ease of use`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* The use of blue and white creates a sense of calmness and professionalism`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`* The icons and graphics are simple and intuitive, making it easy to navigate the UI`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`This detailed breakdown provides a comprehensive understanding of the UI mockup, including its layout, color scheme, and components.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})}),`\n`,_jsx(Heading,{level:`2`,id:`pricing`,children:`Pricing`}),`\n`,_jsxs(_components.p,{children:[`Vision models bill images as `,_jsx(_components.strong,{children:`input tokens`}),`. Each image breaks into a tile grid (capped at 2×2 of 560-pixel tiles) and you pay `,_jsx(_components.strong,{children:`1,601 tokens per tile`}),`. There are only four possible image bills:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Image size (W × H)`}),_jsx(_components.th,{style:{textAlign:`center`},children:`Tile grid`}),_jsx(_components.th,{style:{textAlign:`right`},children:`Image tokens`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Up to 559 × 559`}),_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`center`},children:`1 × 1`}),_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`1,601`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Up to 559 tall, wider than 560`}),_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`center`},children:`1 × 2`}),_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`3,202`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Taller than 560, up to 559 wide`}),_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`center`},children:`2 × 1`}),_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`3,202`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Wider than 560 `,_jsx(_components.strong,{children:`and`}),` taller than 560`]}),_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`center`},children:`2 × 2`}),_jsx(_components.td,{\"data-numeric\":`true`,style:{textAlign:`right`},children:`6,404`})]})]})]}),`\n`,_jsx(_components.p,{children:`A 4K screenshot and a 1280×720 photo are billed the same (both are 2×2). The image tokens are added to your prompt’s text tokens; output tokens are billed separately at the model’s standard rate.`}),`\n`,_jsx(_components.p,{children:`The exact formula:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`3`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`image_tokens `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` min`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`max`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(width `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`//`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 560`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` min`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`max`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(height `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`//`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 560`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 1601`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Use image inputs","description":"Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.","href":"/docs/inference/vision/overview"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Basic example","slug":"basic-example","depth":2,"children":[]},{"title":"Pricing","slug":"pricing","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/togetherai-52386018/9caa6b942e5ff42e/cookie-banner.js","/_mintlify/custom/togetherai-52386018/640c2436e532f72c/docs/intro-custom.js","/_mintlify/custom/togetherai-52386018/f691cce87ef66561/cookbook-script.js"],"subdomain":"togetherai-52386018","siteName":"Together AI docs","title":"Use image inputs - Together AI docs","contextualStarterQuestions":[{"_id":"6ae8f702e989b5f639e0b11b","deploymentId":"686f1c528aaae71885a4b279","questionText":"How do I pass images to models?","status":"active","generatedBy":"contextual","path":"docs/inference/vision/overview","createdAt":"2026-11-02T20:48:02.308Z","updatedAt":"2026-11-02T20:48:02.308Z","__v":0},{"_id":"6ae8f702e989b5f639e0b11c","deploymentId":"686f1c528aaae71885a4b279","questionText":"What models support vision inputs?","status":"active","generatedBy":"contextual","path":"docs/inference/vision/overview","createdAt":"2026-11-02T20:48:02.308Z","updatedAt":"2026-11-02T20:48:02.308Z","__v":0},{"_id":"6ae8f702e989b5f639e0b11d","deploymentId":"686f1c528aaae71885a4b279","questionText":"Can I get JSON responses?","status":"active","generatedBy":"contextual","path":"docs/inference/vision/overview","createdAt":"2026-11-02T20:48:02.308Z","updatedAt":"2026-11-02T20:48:02.308Z","__v":0}],"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-02T20:47:54.584Z","originalFileLocation":"docs/inference/vision/overview.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Together AI docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Use image inputs - Together AI docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Together AI docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.together.ai/docs/inference/vision/overview\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://togetherai-52386018.mintlify.site/_mintlify/api/og/v2?division=Vision\u0026amp;title=Use+image+inputs\u0026amp;description=Run+vision-language+models+on+Together%3A+pass+images+alongside+text+and+get+structured+replies%2C+transcripts%2C+comparisons%2C+or+extracted+data.\u0026amp;theme=c0e634772bf5324b338a7fcf\u0026amp;signature=8ac839a3f2e97afa6ac852bac3c24068b9758bd607f21503f85ecdea55dbf110\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Use image inputs - Together AI docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://togetherai-52386018.mintlify.site/_mintlify/api/og/v2?division=Vision\u0026amp;title=Use+image+inputs\u0026amp;description=Run+vision-language+models+on+Together%3A+pass+images+alongside+text+and+get+structured+replies%2C+transcripts%2C+comparisons%2C+or+extracted+data.\u0026amp;theme=c0e634772bf5324b338a7fcf\u0026amp;signature=8ac839a3f2e97afa6ac852bac3c24068b9758bd607f21503f85ecdea55dbf110\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/togetherai-52386018/GkjET5UlJhhSwWhA/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Together AI docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FC4C02\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.together.ai/docs/inference/vision/overview\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/inference/vision/overview.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.together.ai/#organization\",\"name\":\"Together AI docs\",\"url\":\"https://docs.together.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/togetherai-52386018/gasg_XMR14P-KB11/logo/logo.svg?fit=max\u0026auto=format\u0026n=gasg_XMR14P-KB11\u0026q=85\u0026s=7ce2e810455d35e5916bb7253983eb98\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.together.ai#website\",\"name\":\"Together AI docs\",\"url\":\"https://docs.together.ai\",\"publisher\":{\"@id\":\"https://docs.together.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.together.ai/docs/inference/vision/overview#webpage\",\"url\":\"https://docs.together.ai/docs/inference/vision/overview\",\"name\":\"Use image inputs\",\"description\":\"Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.\",\"dateModified\":\"2026-11-02T20:47:54.584Z\",\"isPartOf\":{\"@id\":\"https://docs.together.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.together.ai/docs/inference/vision/overview#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.together.ai/docs/inference/vision/overview#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"INFERENCE APIS\",\"item\":\"https://docs.together.ai/docs/inference/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Use image inputs\",\"item\":\"https://docs.together.ai/docs/inference/vision/overview\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.together.ai/docs/inference/vision/overview#article\",\"headline\":\"Use image inputs\",\"name\":\"Use image inputs\",\"description\":\"Run vision-language models on Together: pass images alongside text and get structured replies, transcripts, comparisons, or extracted data.\",\"url\":\"https://docs.together.ai/docs/inference/vision/overview\",\"mainEntityOfPage\":{\"@id\":\"https://docs.together.ai/docs/inference/vision/overview#webpage\"},\"dateModified\":\"2026-11-02T20:47:54.584Z\",\"publisher\":{\"@id\":\"https://docs.together.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.together.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Together AI docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Together AI docs","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"GET STARTED","pages":[{"title":"Overview","mode":"wide","href":"/intro"},{"title":"Quickstart","href":"/docs/quickstart"},{"title":"Coding agent setup","href":"/docs/agent-skills"},{"sidebarTitle":"Together Link","title":"Configure Claude Code, Codex, OpenCode \u0026 Pi Code with open-weight models","tag":"BETA","href":"/docs/togetherlink"},{"title":"Recommended models","mode":"wide","href":"/docs/inference/recommended-models"}]},{"group":"SERVERLESS","pages":[{"title":"Overview","sidebarTitle":"Overview","mode":"wide","href":"/docs/serverless/overview"},{"title":"Available models","mode":"wide","href":"/docs/serverless/models"},{"title":"Geo-specific inference","href":"/docs/serverless/geo-specific-inference"},{"title":"Rate limits","href":"/docs/serverless/rate-limits"},{"title":"Provisioned throughput","href":"/docs/inference/provisioned-throughput"}]},{"group":"INFERENCE APIS","pages":[{"title":"Overview","mode":"wide","href":"/docs/inference/overview"},{"title":"OpenAI compatibility","href":"/docs/inference/openai-compatibility"},{"title":"Messages API","tag":"NEW","href":"/docs/inference/messages-api"},{"title":"Responses API","tag":"NEW","href":"/docs/inference/responses-api"},{"title":"Third-party integrations","sidebarTitle":"SDK integrations","href":"/docs/inference/sdk-integrations"},{"group":"Chat \u0026 text","pages":[{"title":"Send chat completions","href":"/docs/inference/chat/overview"},{"title":"Parameters","href":"/docs/inference/chat/parameters"},{"title":"Structured outputs","href":"/docs/inference/chat/structured-outputs"},{"title":"Reasoning","href":"/docs/inference/chat/reasoning"},{"title":"Prompt caching","href":"/docs/inference/chat/prompt-caching"},{"title":"Log probabilities","sidebarTitle":"Logprobs","href":"/docs/inference/chat/logprobs"}]},{"group":"Function calling","pages":[{"title":"Function calling patterns","sidebarTitle":"Patterns","href":"/docs/inference/function-calling/overview"},{"title":"Call functions","href":"/docs/inference/function-calling/single-call"},{"title":"Call functions in parallel","sidebarTitle":"Parallel calls","href":"/docs/inference/function-calling/parallel"},{"title":"Agentic function calling patterns","sidebarTitle":"Agentic patterns","href":"/docs/inference/function-calling/agentic"},{"title":"Function calling best practices","sidebarTitle":"Best practices","href":"/docs/inference/function-calling/best-practices"}]},{"group":"Image generation","pages":[{"title":"Text-to-image generation","sidebarTitle":"Text-to-image","href":"/docs/inference/images/overview"},{"title":"Image-to-image generation","sidebarTitle":"Image-to-image","href":"/docs/inference/images/reference-images"},{"title":"Image generation parameters","sidebarTitle":"Parameters","href":"/docs/inference/images/parameters"}]},{"group":"Video generation","pages":[{"title":"Generate videos","href":"/docs/inference/videos/overview"},{"title":"Reference images and keyframes","sidebarTitle":"Reference \u0026 keyframes","href":"/docs/inference/videos/reference-and-keyframes"},{"title":"Audio input for videos","sidebarTitle":"Audio input","href":"/docs/inference/videos/audio-input"},{"title":"Video generation parameters","sidebarTitle":"Parameters","description":"Reference for video generation parameters, including guidance scale and quality control.","href":"/docs/inference/videos/parameters"}]},{"group":"Vision","pages":[{"title":"Use image inputs","href":"/docs/inference/vision/overview"},{"title":"Vision input modes","sidebarTitle":"Input modes","description":"Send local images, video URLs, or multiple images to a vision model in a single request.","href":"/docs/inference/vision/inputs"},{"title":"Structured extraction with vision","sidebarTitle":"Structured extraction","href":"/docs/inference/vision/structured-extraction"},{"title":"Vision-language function calling","sidebarTitle":"Function calling","href":"/docs/inference/vision/function-calling"}]},{"group":"Speech-to-text","pages":[{"title":"Transcribe audio","href":"/docs/inference/transcription/overview"},{"title":"Streaming transcription","sidebarTitle":"Streaming","href":"/docs/inference/transcription/streaming"},{"title":"Audio translation","sidebarTitle":"Translation","href":"/docs/inference/transcription/translation"},{"title":"Voice activity detection","href":"/docs/inference/transcription/voice-activity-detection"},{"title":"Advanced transcription options","sidebarTitle":"Advanced options","href":"/docs/inference/transcription/features"}]},{"group":"Text-to-speech","pages":[{"title":"Generate speech","href":"/docs/inference/text-to-speech/overview"},{"title":"Text-to-speech streaming","sidebarTitle":"Streaming","href":"/docs/inference/text-to-speech/streaming"},{"title":"WebSocket API","href":"/docs/inference/text-to-speech/websocket"}]},{"group":"Rerank","pages":[{"title":"Rerank","href":"/docs/inference/embeddings/rerank"}]},{"group":"LLM evaluations","pages":[{"title":"Evaluations","sidebarTitle":"Overview","href":"/docs/ai-evaluations"},{"title":"Run an evaluation","href":"/docs/run-an-evaluation"},{"title":"Parameters and result formats","sidebarTitle":"Parameters and results","href":"/docs/evaluations-reference"},{"title":"Supported models","href":"/docs/evaluations-supported-models"}]},{"group":"Batch processing","pages":[{"title":"Overview","href":"/docs/inference/batch/overview"},{"title":"Run a batch job","href":"/docs/inference/batch/tutorial"},{"title":"Manage batch jobs","href":"/docs/inference/batch/manage"}]}]},{"group":"DEDICATED MODEL INFERENCE","pages":[{"title":"Overview","sidebarTitle":"Overview","mode":"wide","href":"/docs/dedicated-endpoints/overview"},{"title":"Quickstart","sidebarTitle":"Quickstart","href":"/docs/dedicated-endpoints/quickstart"},{"title":"Concepts","href":"/docs/dedicated-endpoints/concepts"},{"title":"Pricing","href":"/docs/dedicated-endpoints/pricing"},{"group":"Choose a model","pages":[{"title":"Supported models","sidebarTitle":"Supported models","mode":"wide","href":"/docs/dedicated-endpoints/models"},{"title":"Upload a fine-tuned model","sidebarTitle":"Upload a fine-tuned model","href":"/docs/dedicated-endpoints/custom-models"},{"title":"Upload a LoRA adapter","sidebarTitle":"Upload a LoRA adapter","href":"/docs/dedicated-endpoints/adapter"}]},{"group":"Deploy a model","pages":[{"title":"Choose a deployment profile","sidebarTitle":"Choose hardware","href":"/docs/dedicated-endpoints/configs"},{"title":"Manage endpoints and deployments","sidebarTitle":"Manage deployments","href":"/docs/dedicated-endpoints/manage"},{"title":"Configure autoscaling","href":"/docs/dedicated-endpoints/scaling"},{"title":"Migrate from v1","href":"/docs/dedicated-endpoints/migrate-from-v1"}]},{"group":"Route traffic","pages":[{"title":"Overview","sidebarTitle":"Overview","href":"/docs/dedicated-endpoints/route-traffic"},{"title":"Split traffic across deployments","sidebarTitle":"Split traffic","href":"/docs/dedicated-endpoints/split-traffic"},{"title":"Start a rollout","sidebarTitle":"Rollouts","href":"/docs/dedicated-endpoints/rollouts"},{"title":"Gate rollouts with metrics","sidebarTitle":"Canary gates","href":"/docs/dedicated-endpoints/rollout-metric-gates"},{"title":"Run an A/B test","sidebarTitle":"A/B tests","href":"/docs/dedicated-endpoints/ab-tests"},{"title":"Run a shadow experiment","sidebarTitle":"Shadow experiments","href":"/docs/dedicated-endpoints/shadow-experiments"}]},{"title":"Send requests","sidebarTitle":"Send requests","href":"/docs/dedicated-endpoints/requests"},{"group":"Monitor endpoints","pages":[{"title":"Metrics and dashboards","sidebarTitle":"Metrics and dashboards","href":"/docs/dedicated-endpoints/monitoring"},{"title":"Run your own Grafana","href":"/docs/dedicated-endpoints/grafana"}]}]},{"group":"DEDICATED CONTAINER INFERENCE","pages":[{"title":"Overview","mode":"wide","href":"/docs/dedicated-container-inference"},{"title":"Quickstart","sidebarTitle":"Quickstart","href":"/docs/containers-quickstart"},{"group":"Tutorials","pages":[{"title":"Image generation with FLUX.2","href":"/docs/dedicated-containers-image"},{"title":"Video generation with Wan 2.1","href":"/docs/dedicated-containers-video"},{"title":"Serve an OpenAI-compatible endpoint","href":"/docs/dedicated-containers-openai"},{"title":"Deploy a prebuilt vLLM image","href":"/docs/dedicated-containers-vllm"}]},{"group":"Reference","pages":[{"title":"Architecture","sidebarTitle":"Architecture","href":"/docs/together-deployments"},{"title":"Jig CLI","sidebarTitle":"Jig","href":"/docs/deployments-jig"},{"title":"Sprocket SDK","sidebarTitle":"Sprocket","href":"/docs/deployments-sprocket"},{"title":"Queue API","sidebarTitle":"Queue","href":"/docs/deployments-queue"},{"title":"Sprocket SDK reference","sidebarTitle":"Sprocket reference","href":"/reference/dci-reference-sprocket"}]}]},{"group":"POST-TRAINING","pages":[{"title":"Overview","tag":"NEW","mode":"wide","href":"/docs/post-training/overview"},{"title":"Supervised fine-tuning quickstart","sidebarTitle":"SFT quickstart","href":"/docs/post-training/quickstart-sft"},{"title":"Reinforcement learning with GRPO quickstart","sidebarTitle":"GRPO quickstart","href":"/docs/post-training/quickstart-rl"},{"title":"Concepts","href":"/docs/post-training/concepts"},{"title":"Supported models","mode":"wide","href":"/docs/post-training/supported-models"},{"title":"Pricing","href":"/docs/post-training/pricing"},{"group":"Choose a training method","pages":[{"title":"Compare training methods","sidebarTitle":"Compare training methods","mode":"wide","href":"/docs/post-training/training-methods"},{"title":"LoRA vs. full-weight training","href":"/docs/post-training/lora-vs-full-weight"},{"title":"Supervised fine-tuning","href":"/docs/post-training/sft"},{"title":"Direct preference optimization","href":"/docs/post-training/dpo"},{"title":"Reinforcement learning with GRPO","href":"/docs/post-training/grpo"},{"title":"Multi-turn GRPO","href":"/docs/post-training/multi-turn-environments"},{"title":"Loss functions","href":"/docs/post-training/loss-functions"}]},{"group":"Train with the cookbook","pages":[{"title":"Post-training cookbook overview","sidebarTitle":"Cookbook overview","mode":"wide","href":"/docs/post-training/cookbook-overview"},{"title":"Run SFT recipes","sidebarTitle":"SFT recipes","href":"/docs/post-training/sft-recipes"},{"title":"Run DPO recipes","sidebarTitle":"DPO recipes","href":"/docs/post-training/dpo-recipes"},{"title":"Run GRPO recipes","sidebarTitle":"GRPO recipes","href":"/docs/post-training/grpo-recipes"},{"title":"Run multi-turn GRPO recipes","sidebarTitle":"Multi-turn GRPO recipes","href":"/docs/post-training/multi-turn-recipes"},{"title":"Cookbook config reference","sidebarTitle":"Config reference","href":"/docs/post-training/cookbook"}]},{"group":"Train with the SDK","pages":[{"title":"Write a training loop","sidebarTitle":"Write a training loop","href":"/docs/post-training/training-loop"},{"title":"Build samples and loss masks","sidebarTitle":"Samples and loss masks","href":"/docs/post-training/samples"},{"title":"Write a custom loss function","sidebarTitle":"Custom loss functions","href":"/docs/post-training/custom-loss-functions"},{"title":"Migrate from Tinker","href":"/docs/post-training/migrate-from-tinker"}]},{"group":"Manage a training run","pages":[{"title":"Manage model resources","sidebarTitle":"Model resources","href":"/docs/post-training/model-resources"},{"title":"Train multiple adapters on one base model","sidebarTitle":"Train multiple adapters","href":"/docs/post-training/multi-lora"},{"title":"Monitor training runs","sidebarTitle":"Monitoring","href":"/docs/post-training/monitoring"},{"title":"Evaluate models","href":"/docs/post-training/evaluate"},{"title":"Manage checkpoints","sidebarTitle":"Checkpoints","href":"/docs/post-training/checkpoints"},{"title":"Lifecycle, errors, and limits","href":"/docs/post-training/limits-and-errors"}]},{"group":"Deploy","pages":[{"title":"Deploy a checkpoint","href":"/docs/post-training/deployment"},{"title":"Multi-LoRA deployment","sidebarTitle":"Multi-LoRA deployment","href":"/docs/post-training/multi-lora-deployment"},{"title":"Prepare for FP4 inference","sidebarTitle":"Prepare for FP4 inference","href":"/docs/post-training/prepare-for-fp4-inference"}]}]},{"group":"FINE-TUNING","pages":[{"title":"Overview","mode":"wide","href":"/docs/fine-tuning/overview"},{"title":"Fine-tuning quickstart","sidebarTitle":"Quickstart","href":"/docs/fine-tuning/quickstart"},{"title":"Pricing","href":"/docs/fine-tuning/pricing"},{"title":"Data preparation","href":"/docs/fine-tuning/data-preparation"},{"group":"Choose a base model","pages":[{"title":"Supported models","mode":"wide","href":"/docs/fine-tuning/supported-models"},{"title":"Bring your own model","href":"/docs/fine-tuning/byom"}]},{"group":"Training methods","pages":[{"title":"Supervised fine-tuning","sidebarTitle":"Supervised fine-tuning","href":"/docs/fine-tuning/supervised"},{"title":"Preference fine-tuning","href":"/docs/fine-tuning/preference-tuning"},{"title":"LoRA vs. full fine-tuning","href":"/docs/fine-tuning/lora-vs-full"},{"title":"Vision fine-tuning","href":"/docs/fine-tuning/vision"},{"title":"Function-calling fine-tuning","sidebarTitle":"Function calling","href":"/docs/fine-tuning/function-calling"},{"title":"Reasoning fine-tuning","sidebarTitle":"Reasoning","href":"/docs/fine-tuning/reasoning"}]},{"group":"Manage jobs","pages":[{"title":"Monitor a fine-tuning job","sidebarTitle":"Monitoring","href":"/docs/fine-tuning/monitoring"},{"title":"Early stopping","sidebarTitle":"Early stopping","href":"/docs/fine-tuning/early-stopping"},{"title":"Troubleshooting fine-tuning jobs","sidebarTitle":"Troubleshooting","href":"/docs/fine-tuning/troubleshooting"}]},{"title":"Deploy a fine-tuned model","href":"/docs/fine-tuning/deployment"}]},{"group":"GPU CLUSTERS","pages":[{"title":"GPU clusters","sidebarTitle":"Overview","mode":"wide","href":"/docs/gpu-clusters-overview"},{"title":"GPU clusters quickstart","sidebarTitle":"Quickstart","href":"/docs/gpu-clusters-quickstart"},{"title":"Concepts","sidebarTitle":"Concepts","href":"/docs/gpu-clusters-concepts"},{"title":"Pricing","href":"/docs/gpu-clusters-billing"},{"group":"Cluster management","pages":[{"title":"Manage GPU clusters","sidebarTitle":"Manage GPU clusters","href":"/docs/gpu-clusters-management"},{"title":"Preemptible compute","href":"/docs/preemptible-compute"},{"title":"Automate cluster operations","sidebarTitle":"Automate with CI/CD","href":"/docs/gpu-clusters-automation"},{"title":"Health checks","href":"/docs/health-checks"},{"title":"Node repair","href":"/docs/node-repair"},{"title":"Set up OIDC authentication","href":"/docs/cluster-oidc"},{"title":"Sign in to clusters with your Together account","href":"/docs/cluster-together-oidc"},{"title":"Slurm configuration","href":"/docs/slurm-configuration"},{"title":"Slurm startup scripts","href":"/docs/slurm-startup-scripts"}]},{"group":"Run workloads","pages":[{"title":"Run workloads on Kubernetes","sidebarTitle":"Kubernetes workloads","href":"/docs/kubernetes-workloads"},{"title":"Submit Slurm jobs","sidebarTitle":"Submit Slurm jobs","href":"/docs/slurm"},{"title":"Cluster storage","href":"/docs/cluster-storage"},{"title":"Connect over SSH","sidebarTitle":"Connect over SSH","href":"/docs/gpu-clusters-ssh"},{"title":"Run nanochat on a GPU cluster","sidebarTitle":"nanochat tutorial","href":"/docs/nanochat-on-gpu-clusters"}]},{"group":"Integrations","pages":[{"title":"Gang-schedule GPU jobs with Volcano","sidebarTitle":"Volcano","tag":"BETA","href":"/docs/volcano-on-gpu-clusters"},{"title":"Queue GPU jobs with Kueue","sidebarTitle":"Kueue","tag":"BETA","href":"/docs/kueue-on-gpu-clusters"},{"title":"Launch jobs with SkyPilot","sidebarTitle":"SkyPilot","href":"/docs/skypilot-on-gpu-clusters"}]}]},{"group":"CODE EXECUTION","pages":[{"title":"Code sandbox","href":"/docs/together-code-sandbox"},{"title":"Code sandbox legacy SDK","sidebarTitle":"Legacy SDK","href":"/docs/together-code-sandbox-legacy"}]},{"group":"ADMINISTRATION","pages":[{"title":"Manage your account","href":"/docs/account-management"},{"title":"Authentication","href":"/docs/api-keys-authentication"},{"title":"IAM model","href":"/docs/identity-access-management"},{"title":"Organizations","href":"/docs/organizations"},{"title":"Projects","href":"/docs/projects"},{"title":"Roles \u0026 permissions (RBAC)","href":"/docs/roles-permissions"},{"title":"Single sign-on (SSO)","href":"/docs/sso"},{"title":"Privacy and security","href":"/docs/privacy-and-security"},{"title":"Zero data retention","href":"/docs/zero-data-retention"},{"group":"Billing","pages":[{"title":"Credits","href":"/docs/billing-credits"},{"title":"Payment methods \u0026 invoices","href":"/docs/billing-payment-methods"},{"title":"Spend controls","href":"/docs/billing-spend-controls"},{"title":"Cost analytics","href":"/docs/billing-cost-analytics"},{"title":"Billing troubleshooting","href":"/docs/billing-troubleshooting"}]},{"title":"Support","href":"/docs/support"}]}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/docs/guides"}]},{"tab":"Learn","pages":[{"title":"Learn","href":"/learn"}]},{"tab":"Demos","pages":[{"title":"Demos","href":"/examples"}]},{"tab":"API reference","pages":[{"title":"API reference","href":"/reference/chat-completions"}]},{"tab":"CLI","pages":[{"title":"CLI","href":"/reference/cli/getting-started"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/docs/changelog"}]}]},"basePath":"","title":"Use image inputs - Together AI docs","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":[],"chunks":[]}