alicloud-ai-search-opensearch by cinience/alicloud-skills
npx skills add https://github.com/cinience/alicloud-skills --skill alicloud-ai-search-opensearchCategory: provider
使用 ha3engine SDK 推送文档并执行 HA/SQL 搜索。本技能仅关注 API/SDK 的使用(不涉及控制台操作步骤)。
安装 SDK(建议在虚拟环境中安装以避免 PEP 668 限制):
python3 -m venv .venv . .venv/bin/activate python -m pip install alibabacloud-ha3engine
通过环境变量提供连接配置:
OPENSEARCH_ENDPOINT (API 域名)OPENSEARCH_INSTANCE_IDOPENSEARCH_USERNAMEOPENSEARCH_PASSWORDOPENSEARCH_DATASOURCE (数据源名称)OPENSEARCH_PK_FIELD (主键字段名)广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
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_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)
python skills/ai/search/alicloud-ai-search-opensearch/scripts/quickstart.py
环境变量:
OPENSEARCH_ENDPOINTOPENSEARCH_INSTANCE_IDOPENSEARCH_USERNAMEOPENSEARCH_PASSWORDOPENSEARCH_DATASOURCEOPENSEARCH_PK_FIELD (可选,默认为 id)OPENSEARCH_CLUSTER (可选,默认为 general)可选参数:--cluster, --hit, --query。
from alibabacloud_ha3engine import models
sql = "select * from <indexTableName>&&kvpair=trace:INFO;formatType:json"
sql_query = models.SearchQuery(sql=sql)
req = models.SearchRequestModel({}, sql_query)
resp = ha3.search(req)
print(resp)
push_documents 进行添加/删除更新。pk_field 是否匹配。mkdir -p output/alicloud-ai-search-opensearch
for f in skills/ai/search/alicloud-ai-search-opensearch/scripts/*.py; do
python3 -m py_compile "$f"
done
echo "py_compile_ok" > output/alicloud-ai-search-opensearch/validate.txt
通过标准:命令以 0 退出且生成 output/alicloud-ai-search-opensearch/validate.txt 文件。
output/alicloud-ai-search-opensearch/ 目录下。SDK 包:alibabacloud-ha3engine
演示:OpenSearch 文档中的数据推送和 HA/SQL 搜索演示
源代码列表:references/sources.md
每周安装量
163
代码仓库
GitHub 星标数
337
首次出现
12 天前
安全审计
安装于
gemini-cli162
github-copilot162
codex162
kimi-cli162
amp162
cursor162
Category: provider
Use the ha3engine SDK to push documents and execute HA/SQL searches. This skill focuses on API/SDK usage only (no console steps).
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_IDOPENSEARCH_USERNAMEOPENSEARCH_PASSWORDOPENSEARCH_DATASOURCE (data source name)OPENSEARCH_PK_FIELD (primary key field name)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)
python skills/ai/search/alicloud-ai-search-opensearch/scripts/quickstart.py
Environment variables:
OPENSEARCH_ENDPOINTOPENSEARCH_INSTANCE_IDOPENSEARCH_USERNAMEOPENSEARCH_PASSWORDOPENSEARCH_DATASOURCEOPENSEARCH_PK_FIELD (optional, default id)OPENSEARCH_CLUSTER (optional, default general)Optional args: --cluster, --hit, --query.
from alibabacloud_ha3engine import models
sql = "select * from <indexTableName>&&kvpair=trace:INFO;formatType:json"
sql_query = models.SearchQuery(sql=sql)
req = models.SearchRequestModel({}, sql_query)
resp = ha3.search(req)
print(resp)
push_documents for add/delete updates.pk_field alignment.mkdir -p output/alicloud-ai-search-opensearch
for f in skills/ai/search/alicloud-ai-search-opensearch/scripts/*.py; do
python3 -m py_compile "$f"
done
echo "py_compile_ok" > output/alicloud-ai-search-opensearch/validate.txt
Pass criteria: command exits 0 and output/alicloud-ai-search-opensearch/validate.txt is generated.
output/alicloud-ai-search-opensearch/.SDK package: alibabacloud-ha3engine
Demos: data push and HA/SQL search demos in OpenSearch docs
Source list: references/sources.md
Weekly Installs
163
Repository
GitHub Stars
337
First Seen
12 days ago
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
gemini-cli162
github-copilot162
codex162
kimi-cli162
amp162
cursor162
Azure 配额管理指南:服务限制、容量验证与配额增加方法
79,700 周安装
Monorepo 包链接指南:pnpm/npm/yarn/bun 工作区依赖管理详解
552 周安装
BibiGPT AI视频音频摘要工具:CLI与OpenAPI双模式,一键生成Markdown/JSON摘要
558 周安装
Mermaid 图表专家 - 创建架构图、流程图、ERD等专业图表,提升技术文档质量
561 周安装
Medusa数据库迁移工具db-migrate:一键执行迁移命令,实时反馈结果
560 周安装
React 网页动画库指南:GSAP、Framer Motion、Anime.js 实现 Awwwards 级 60fps 动画
567 周安装
GitHub代码安全审计工具 - 自动化查找缺陷、安全漏洞与代码质量问题
574 周安装