Metadata-Version: 2.1
Name: metaso-sdk
Version: 0.1.1
Summary: The official Python SDK for https://metaso.cn
Author-Email: Zhao Xiaohong <zhaoxiaohong@metasota.ai>
License: MIT
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Documentation
Classifier: Topic :: Software Development
Classifier: Topic :: Utilities
Classifier: Typing :: Typed
Project-URL: Homepage, https://meta-sota.github.io/metaso-sdk
Project-URL: Documentation, https://meta-sota.github.io/metaso-sdk
Project-URL: Changelog, https://meta-sota.github.io/metaso-sdk/changelog
Project-URL: Repository, https://github.com/meta-sota/metaso-sdk
Project-URL: Issues, https://github.com/meta-sota/metaso-sdk/issues
Project-URL: Discussions, https://github.com/meta-sota/metaso-sdk/discussions
Requires-Python: >=3.8
Requires-Dist: httpx-sse>=0.4.0
Requires-Dist: httpx>=0.27.2
Requires-Dist: pydantic>=2.10.0
Requires-Dist: streamable>=1.3.5
Description-Content-Type: text/markdown

# metaso-sdk

[![ci](https://github.com/meta-sota/metaso-sdk/workflows/ci/badge.svg)](https://github.com/meta-sota/metaso-sdk/actions?query=workflow%3Aci)
[![documentation](https://img.shields.io/badge/docs-mkdocs-708FCC.svg?style=flat)](https://meta-sota.github.io/metaso-sdk/)
[![pypi version](https://img.shields.io/pypi/v/metaso-sdk.svg)](https://pypi.org/project/metaso-sdk/)

[秘塔AI搜索](https://metaso.cn) Python SDK。在使用这个 SDK 之前，请先通过[API文档专题](https://metaso.cn/s/hXHmJkx)了解 HTTP 接口的更多细节。

## 安装

```bash
pip install metaso-sdk
```

## 配置 METASO_API_KEY

metaso-sdk 从环境变量 `METASO_API_KEY` 读取用于认证的 API 密钥，可以在 shell 里进行设置：

```bash
export METASO_API_KEY="mk-EE2..."
```

或者在 Python 代码里进行设置：

```python
import os
os.environ["METASO_API_KEY"] = "mk-EE2..."
```

## 搜索

### 搜索问题
```python
from metaso_sdk import search, Query
search(Query(question="abc"))
```

### 追问

```python
search(Query(question="广播公司", sessionId="8550018047390023680"))
```

### 流式返回

```python
for chunk in search(Query(question="abc"), stream=True):
    print(chunk)

...
{'type': 'heartbeat'}
{'text': '因此，“abc”可以指代字母表的前三个字母、美籍华裔、美国广播公司、一种音乐记谱法以及一种编程语言。具体含义需要根据上下文来确定。', 'type': 'append-text'}
```

## 专题

### 递归上传文件夹

```
from metaso_sdk import create_topic, upload_directory, Topic

topic = create_topic(Topic(name="functional programing"))
files = upload_directory(topic, "dir")
```

### 搜索特定专题

```python
from metaso_sdk import search, Query

query = Query(question="functional")
search(query, topic=topic)
```
