TopRank Skills

Home / Claw Skills / Recherche / alicloud-ai-search-opensearch
Official OpenClaw rules 54%

alicloud-ai-search-opensearch

Use OpenSearch vector search edition via the Python SDK (ha3engine) to push documents and run HA/SQL searches. Ideal for RAG and vector retrieval pipelines in Claude Code/Codex.

Stars

0

Installs

0

Status

ACTIVE

Visibility

PUBLIC

安装方式

直接复制以下提示词,发送给你的 AI 助手即可完成安装。

请先检查是否已安装 SkillHub 商店,若未安装,请根据 https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/skillhub.md 安装 SkillHub 商店,然后安装 alicloud-ai-search-opensearch 技能。 若已安装,则直接安装 alicloud-ai-search-opensearch 技能。

Overview

Skill Key
cinience/alicloud-ai-search-opensearch
Author
cinience
Source Repo
openclaw/skills
Version
1.0.0
Source Path
skills/cinience/alicloud-ai-search-opensearch
Latest Commit SHA
e0f4db948cc46fe37a553f2224146ad0814470fd

Extracted Content

SKILL.md excerpt

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):

```bash
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)

```python
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

```ba...

Related Claw Skills