Integrate Together AI models with Portkey’s AI Gateway
Portkey provides a robust and secure gateway to integrate various Large Language Models (LLMs) into applications, including Together AI’s hosted models.With Portkey, take advantage of features like fast AI gateway access, observability, prompt management, and more, while securely managing API keys through Model Catalog.
from portkey_ai import Portkey# 1. Install: pip install portkey-ai# 2. Add @together-ai provider in model catalog# 3. Use it:portkey = Portkey(api_key="PORTKEY_API_KEY")response = portkey.chat.completions.create( model="@together-ai/meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo", messages=[{"role": "user", "content": "Say this is a test"}])print(response.choices[0].message.content)
import Portkey from 'portkey-ai'// 1. Install: npm install portkey-ai// 2. Add @together-ai provider in model catalog// 3. Use it:const portkey = new Portkey({ apiKey: "PORTKEY_API_KEY"})const response = await portkey.chat.completions.create({ model: "@together-ai/meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo", messages: [{ role: "user", content: "Say this is a test" }]})console.log(response.choices[0].message.content)
from openai import OpenAIfrom portkey_ai import PORTKEY_GATEWAY_URL# 1. Install: pip install openai portkey-ai# 2. Add @together-ai provider in model catalog# 3. Use it:client = OpenAI( api_key="PORTKEY_API_KEY", # Portkey API key base_url=PORTKEY_GATEWAY_URL)response = client.chat.completions.create( model="@together-ai/meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo", messages=[{"role": "user", "content": "Say this is a test"}])print(response.choices[0].message.content)
import OpenAI from "openai"import { PORTKEY_GATEWAY_URL } from "portkey-ai"// 1. Install: npm install openai portkey-ai// 2. Add @together-ai provider in model catalog// 3. Use it:const client = new OpenAI({ apiKey: "PORTKEY_API_KEY", // Portkey API key baseURL: PORTKEY_GATEWAY_URL})const response = await client.chat.completions.create({ model: "@together-ai/meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo", messages: [{ role: "user", content: "Say this is a test" }]})console.log(response.choices[0].message.content)
# 1. Add @together-ai provider in model catalog# 2. Use it:curl https://api.portkey.ai/v1/chat/completions \ -H "Content-Type: application/json" \ -H "x-portkey-api-key: $PORTKEY_API_KEY" \ -d '{ "model": "@together-ai/meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo", "messages": [ { "role": "user", "content": "Say this is a test" } ] }'
Tip: You can also set provider="@together-ai" in Portkey() and use just model="meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo" in the request.
Together AI supports reasoning models that expose their internal chain of thought. Use the reasoning_effort parameter to control reasoning behavior, and set strict_open_ai_compliance=False to receive the thinking content in content_blocks.
from portkey_ai import Portkeyportkey = Portkey( api_key="PORTKEY_API_KEY", strict_open_ai_compliance=False)response = portkey.chat.completions.create( model="@together-ai/deepseek-ai/DeepSeek-R1", messages=[{"role": "user", "content": "Solve step by step: What is 23 * 47?"}], reasoning_effort="medium")# Access thinking content from content_blocksfor block in response.choices[0].message.content_blocks: if block.get("type") == "thinking": print("Thinking:", block["thinking"]) elif block.get("type") == "text": print("Response:", block["text"])
import Portkey from 'portkey-ai'const portkey = new Portkey({ apiKey: "PORTKEY_API_KEY", strictOpenAiCompliance: false})const response = await portkey.chat.completions.create({ model: "@together-ai/deepseek-ai/DeepSeek-R1", messages: [{ role: "user", content: "Solve step by step: What is 23 * 47?" }], reasoning_effort: "medium"})// Access thinking content from content_blocksfor (const block of response.choices[0].message.content_blocks) { if (block.type === "thinking") { console.log("Thinking:", block.thinking) } else if (block.type === "text") { console.log("Response:", block.text) }}
The reasoning response includes content_blocks with both the model’s thinking process and the final answer. Streaming is also supported and returns reasoning chunks in the content_blocks field of the stream delta.
Thinking Mode Documentation
Learn more about thinking/reasoning support across providers
Manage all prompt templates to Together AI in the Prompt Library. All current Together AI models are supported, and you can easily test different prompts.Use the portkey.prompts.completions.create interface to use the prompt in an application.