Category: provider OpenSearch Vector Search Edition Use the ha3engine SDK to push documents and execute HA/SQL searches. This skill focuses on API/SDK usage only (no console steps). Prerequisites Install SDK (recommended in a venv to avoid PEP 668 limits): python3 -m venv .venv . .venv/bin/activate python -m pip install alibabacloud-ha3engine Provide connection config via environment variables: OPENSEARCH_ENDPOINT (API domain) OPENSEARCH_INSTANCE_ID OPENSEARCH_USERNAME OPENSEARCH_PASSWORD OPENSEARCH_DATASOURCE (data source name) OPENSEARCH_PK_FIELD (primary key field name) Quickstart (push + search) import os from alibabacloud_ha3engine import models , client from Tea . exceptions import TeaException , RetryError cfg = models . Config ( endpoint = os . getenv ( "OPENSEARCH_ENDPOINT" ) , instance_id = os . getenv ( "OPENSEARCH_INSTANCE_ID" ) , protocol = "http" , access_user_name = os . getenv ( "OPENSEARCH_USERNAME" ) , access_pass_word = os . getenv ( "OPENSEARCH_PASSWORD" ) , ) ha3 = client . Client ( cfg ) def push_docs ( ) : data_source = os . getenv ( "OPENSEARCH_DATASOURCE" ) pk_field = os . getenv ( "OPENSEARCH_PK_FIELD" , "id" ) documents = [ { "fields" : { "id" : 1 , "title" : "hello" , "content" : "world" } , "cmd" : "add" } , { "fields" : { "id" : 2 , "title" : "faq" , "content" : "vector search" } , "cmd" : "add" } , ] req = models . PushDocumentsRequestModel ( { } , documents ) return ha3 . push_documents ( data_source , pk_field , req ) def search_ha ( ) :
HA query example. Replace cluster/table names as needed.
query_str
(
"config=hit:5,format:json,qrs_chain:search"
"&&query=title:hello"
"&&cluster=general"
)
ha_query
=
models
.
SearchQuery
(
query
=
query_str
)
req
=
models
.
SearchRequestModel
(
{
}
,
ha_query
)
return
ha3
.
search
(
req
)
try
:
print
(
push_docs
(
)
.
body
)
print
(
search_ha
(
)
)
except
(
TeaException
,
RetryError
)
as
e
:
print
(
e
)
Script quickstart
python skills/ai/search/alicloud-ai-search-opensearch/scripts/quickstart.py
Environment variables:
OPENSEARCH_ENDPOINT
OPENSEARCH_INSTANCE_ID
OPENSEARCH_USERNAME
OPENSEARCH_PASSWORD
OPENSEARCH_DATASOURCE
OPENSEARCH_PK_FIELD
(optional, default
id
)
OPENSEARCH_CLUSTER
(optional, default
general
)
Optional args:
--cluster
,
--hit
,
--query
.
SQL-style search
from
alibabacloud_ha3engine
import
models
sql
=
"select * from
output/alicloud-ai-search-opensearch/validate.txt Pass criteria: command exits 0 and output/alicloud-ai-search-opensearch/validate.txt is generated. Output And Evidence Save artifacts, command outputs, and API response summaries under output/alicloud-ai-search-opensearch/ . Include key parameters (region/resource id/time range) in evidence files for reproducibility. Workflow Confirm user intent, region, identifiers, and whether the operation is read-only or mutating. Run one minimal read-only query first to verify connectivity and permissions. Execute the target operation with explicit parameters and bounded scope. Verify results and save output/evidence files. References SDK package: alibabacloud-ha3engine Demos: data push and HA/SQL search demos in OpenSearch docs Source list: references/sources.md