OSS AI VibeFlow is a multimodal data production and transformation service provided by Object Storage Service (OSS). In AI VibeFlow, you can create a DataPipeline to automatically transform unstructured data, such as text, images, and videos, in an OSS object bucket into vector data, and then write the vectors to a vector index in an OSS vector bucket. The automation capabilities of AI VibeFlow let you complete the entire workflow of "raw data upload → data vectorization → vector data storage → semantic retrieval" within OSS, which significantly improves the efficiency of multimodal data production and transformation.
This feature is currently available to whitelisted users. To use it, contact technical support to submit an application.
Core concepts
DataPipeline: the core management object in AI VibeFlow. A DataPipeline corresponds to a single vectorization rule and runs automatically after it is created.
Source data: defines the source of the raw data to be vectorized, including the source bucket, object prefix, file types (text, image, and video), and processing mode (existing data, incremental data, or both).
Vectorization settings: define the vector model source, Model Studio API key, vector model, video frame capture frequency (available only for multimodal models), and whether to cascade the deletion of the corresponding vectors when the source object is deleted.
Destination data: defines the destination vector bucket, vector index, and vector key naming rule to which the vector data is written, and whether to write ObjectTag and UserMeta as scalar metadata.
Exception handling: defines the processing policy when a single vectorization task fails (skip and continue, skip and log, or terminate immediately), and lets you specify the bucket and prefix that receive error messages.
Benefits
End-to-end workflow: massive volumes of raw unstructured data, the vectorization process, and vector data storage are all handled within OSS in a closed loop, which simplifies the production pipeline.
Automatic processing: supports both batch vectorization of existing data and automatic vectorization of newly uploaded data, without manual intervention.
Synchronized data updates: when raw data in the object bucket is modified, overwritten, or deleted, you can choose to synchronously update and delete the corresponding vector data in the vector bucket, which reduces manual maintenance costs.
Flexible vector models: directly calls the text and multimodal vector models provided by Alibaba Cloud Model Studio (such as text-embedding-v4 and tongyi-embedding-vision-plus), so you can select the appropriate model and dimensions based on your business needs.
Transparent costs: vectorization uses your own Model Studio API key, and embedding fees are charged directly by Model Studio. On the OSS side, you are charged only for API requests and vector storage, with no additional service fees.
Traceable failures: for each failed request, information such as the ErrorCode, ErrorMessage, and Model Studio RequestId can be saved as an object to a specified bucket, which makes it easier to locate issues and retry.
Scenarios
AI VibeFlow is suitable for all scenarios in which you need to vectorize massive volumes of unstructured data in OSS. Typical use cases include:
Semantic retrieval and RAG: vectorize documents, images, and videos in an OSS object bucket and write the vectors to a vector bucket, and then combine them with large language models to build Retrieval-Augmented Generation (RAG) applications.
E-commerce image and text search: perform multimodal vectorization of product images and descriptions and write the vectors to a vector bucket to support image-to-image and text-to-image search.
Advertising and marketing asset management: automatically vectorize marketing images and videos to enable semantic recall of assets and recommendation of similar content.
Enterprise knowledge base construction: vectorize internal knowledge documents and question bank images and write the vectors to a vector bucket to enable unified semantic retrieval across business lines.
Multimedia content governance: combine vector similarity with scalar metadata filtering to enable fine-grained management and distribution of image and video assets.
Billing
Using AI VibeFlow incurs the following fees, which are charged separately by OSS and Alibaba Cloud Model Studio:
Billable item | Charged by | Description |
OSS API request fees | OSS | Read and write request fees generated by calling AI VibeFlow-related APIs and automatically triggered APIs such as GetObject and PutVectors. |
Vector storage fees | OSS | Charged based on the amount of vector index storage after the vector data is written to the vector bucket. |
Embedding model call fees | Alibaba Cloud Model Studio | Fees generated by calling your own Model Studio vector model during vectorization. These fees are charged directly by Model Studio based on the number of calls. Pay attention to your Model Studio bill. |
AI VibeFlow does not charge additional task management fees. Because vectorization directly calls the Model Studio API key, the actual processing speed is affected by Model Studio API throttling (RPM/TPM). To increase throughput, request a higher RPM/TPM quota through the Model Studio console, or contact technical support to increase the processing QPS.
Limits
A single account can create up to 1,000 DataPipelines in a single region.
A DataPipeline corresponds to one vector model and one vector index.
The source object bucket, the destination vector bucket, and the bucket that receives error messages must be located in the same region.
The maximum capacity of a single vector index is 2 billion rows. After the index is full, the pipeline automatically enters the Paused state.
When ObjectTag and UserMeta are extracted as vector metadata, you can specify up to 10 keys for each.
Permissions
When you create a DataPipeline, you must specify a RAM role that OSS uses to run vectorization tasks in the background. AI VibeFlow uses a dedicated trust policy (datapipeline-oss.aliyuncs.com) and cannot reuse other service roles such as AliyunOSSRole.
Scenario 1: Alibaba Cloud account + new role (recommended)
When you create a DataPipeline in the console, select Create Role. The system automatically creates an oss-embedding-{uuid} role and completes all permission and trust policy configurations, with no manual operations required.
Scenario 2: Operations by a RAM user
When a RAM user creates a DataPipeline, the Alibaba Cloud account must complete the following three authorization steps in advance. After that, the RAM user can create DataPipelines as expected.
Step 1: Grant ram:PassRole (required)
This permission allows the RAM user to pass the role to the OSS service. It cannot be created quickly in the console and must be granted in advance by the Alibaba Cloud account. Log on to the RAM console with the Alibaba Cloud account and add the following custom policy for the RAM user:
{
"Statement": [
{
"Action": "ram:PassRole",
"Effect": "Allow",
"Resource": "acs:ram::<account-id>:role/oss-embedding-*",
"Condition": {
"StringEquals": {
"acs:Service": "datapipeline-oss.aliyuncs.com"
}
}
}
],
"Version": "1"
}In Resource, oss-embedding-* matches the name of the role created quickly in the console. If you use a custom role, change Resource to acs:ram::<account-id>:role/<custom-role-name>.
Step 2: Grant role creation permissions (quick creation)
When you create a DataPipeline, you must specify a RAM role for OSS to assume (AssumeRole) when it runs vectorization tasks in the background.
Authorization methods (choose one):
Method 1: The Alibaba Cloud account grants authorization in advance in the RAM console
Log on to the RAM console with the Alibaba Cloud account and add a custom policy for the RAM user to grant the sts:AssumeRole permission on the target role. Example policy:
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Resource": "acs:ram::<account-id>:role/<RoleName>"
}
],
"Version": "1"
}Method 2: Quick creation in the AI VibeFlow console
In the "Authorized Role" step of the DataPipeline creation wizard, select "Create Role". The system automatically creates oss-embedding-{uuid} and binds it to the current RAM user, with no additional operations required from the Alibaba Cloud account.
Note: To use quick creation, the RAM user must have the following RAM permissions, which the Alibaba Cloud account must grant in advance in the RAM console:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ram:CreateRole",
"ram:CreatePolicy",
"ram:AttachPolicyToRole"
],
"Resource": "*"
}
]
}Step 3: Confirm the role permissions and trust policy
When you use "Create Role" for quick creation, the system automatically configures the role's permission policy and trust policy, with no manual operations required. If you use a custom role, ensure that the role has the following configurations:
Permission policy (the operation permissions required by the role):
{
"Version": "1",
"Statement": [
{
"Action": [
"oss:GetObject",
"oss:GetObjectTagging",
"oss:GetBucketStat",
"oss:ListObjects"
],
"Resource": [
"acs:oss:*:*:<source-bucket-name>",
"acs:oss:*:*:<source-bucket-name>/*"
],
"Effect": "Allow"
},
{
"Action": [
"oss:GetVectorIndex",
"oss:PutVectors",
"oss:DeleteVectors"
],
"Resource": [
"acs:ossvector:*:*:<vector-bucket-name>",
"acs:ossvector:*:*:<vector-bucket-name>/<vector-index-name>"
],
"Effect": "Allow"
},
{
"Action": [
"oss:PutObject",
"oss:GetBucketStat"
],
"Resource": [
"acs:oss:*:*:<error-output-bucket-name>",
"acs:oss:*:*:<error-output-bucket-name>/*"
],
"Effect": "Allow"
}
]
}The vector resource prefix is acs:ossvector:*:*: (not acs:oss:*:*:). If cascade deletion is not configured, you can remove oss:DeleteVectors. If no bucket is configured to receive error messages, you can remove the third Statement.
Trust policy (allows the OSS service to assume the role):
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"datapipeline-oss.aliyuncs.com"
]
}
}
],
"Version": "1"
}