Portkey Provider Slug: dashscope

Overview

Portkey offers native integrations with dashscope for Node.js, Python, and REST APIs. By combining Portkey with Dashscope, you can create production-grade AI applications with enhanced reliability, observability, and advanced features.

Getting Started

1

Obtain your Dashscope API Key

Visit the Dashscope dashboard to generate your API key.

2

Create a Virtual Key in Portkey

Portkey’s virtual key vault simplifies your interaction with Dashscope. Virtual keys act as secure aliases for your actual API keys, offering enhanced security and easier management through budget limits to control your API usage.

Use the Portkey app to create a virtual key associated with your Dashscope API key.

3

Initialize the Portkey Client

Now that you have your virtual key, set up the Portkey client:

Portkey Hosted App

Use the Portkey API key and the Dashscope virtual key to initialize the client in your preferred programming language.

Open Source Use

Alternatively, use Portkey’s Open Source AI Gateway to enhance your app’s reliability with minimal code:

🔥 That’s it! You’ve integrated Portkey into your application with just a few lines of code. Now let’s explore making requests using the Portkey client.

Supported Models

Supported Endpoints and Parameters

EndpointSupported Parameters
chatCompletemessages, max_tokens, temperature, top_p, stream, presence_penalty, frequency_penalty
embedmodel, input, encoding_format, dimensions, user

Dashscope Supported Features

Chat Completions

Generate chat completions using Dashscope models through Portkey:

Embeddings

Generate embeddings for text using Dashscope embedding models:

Portkey’s Advanced Features

Track End-User IDs

Portkey allows you to track user IDs passed with the user parameter in Dashscope requests, enabling you to monitor user-level costs, requests, and more:

When you include the user parameter in your requests, Portkey logs will display the associated user ID, as shown in the image below:

In addition to the user parameter, Portkey allows you to send arbitrary custom metadata with your requests. This powerful feature enables you to associate additional context or information with each request, which can be useful for analysis, debugging, or other custom use cases.

Using The Gateway Config

Here’s a simplified version of how to use Portkey’s Gateway Configuration:

1

Create a Gateway Configuration

You can create a Gateway configuration using the Portkey Config Dashboard or by writing a JSON configuration in your code. In this example, requests are routed based on the user’s subscription plan (paid or free).

config = {
  "strategy": {
    "mode": "conditional",
    "conditions": [
      {
        "query": { "metadata.user_plan": { "$eq": "paid" } },
        "then": "qwen-turbo"
      },
      {
        "query": { "metadata.user_plan": { "$eq": "free" } },
        "then": "gpt-3.5"
      }
    ],
    "default": "base-gpt4"
  },
  "targets": [
    {
      "name": "qwen-turbo",
      "virtual_key": "xx"
    },
    {
      "name": "gpt-3.5",
      "virtual_key": "yy"
    }
  ]
}
2

Process Requests

When a user makes a request, it will pass through Portkey’s AI Gateway. Based on the configuration, the Gateway routes the request according to the user’s metadata.

3

Set Up the Portkey Client

Pass the Gateway configuration to your Portkey client. You can either use the config object or the Config ID from Portkey’s hosted version.

That’s it! Portkey seamlessly allows you to make your AI app more robust using built-in gateway features. Learn more about advanced gateway features:

Guardrails

Portkey’s AI gateway enables you to enforce input/output checks on requests by applying custom hooks before and after processing. Protect your user’s/company’s data by using PII guardrails and many more available on Portkey Guardrails:

{
	"virtual_key":"dashscope-xxx",
	"before_request_hooks": [{
		"id": "input-guardrail-id-xx"
	}],
	"after_request_hooks": [{
		"id": "output-guardrail-id-xx"
	}]
}

Learn More About Guardrails

Explore Portkey’s guardrail features to enhance the security and reliability of your AI applications.

Next Steps

The complete list of features supported in the SDK are available in our comprehensive documentation:

Portkey SDK Documentation

Explore the full capabilities of the Portkey SDK and how to leverage them in your projects.


For the most up-to-date information on supported features and endpoints, please refer to our API Reference.