Skip to main content

Tsugu Python Frontend

Project description

Chat Tsugu Py tmrn

✨ Python 编写的 TsuguBanGDreamBot 自然语言交互库 ✨

license license license


📦 安装

pip install tsugu --upgrade

API powered by tsugu-api-python

Command matching provided by Alconna


📚 异步支持

  • 4.0.0 后需要异步环境处理。

📖 使用

cmd_generator 是一个异步方法,用于直接处理用户输入的自然语言并返回查询结果:

  • satori-python + chronocat 为例
from tsugu import cmd_generator

@app.register_on(EventType.MESSAGE_CREATED)
async def on_message_(account: Account, event: Event):

    async def send_active_message(messages: dict):
        message = messages.get('message', None)
        if message:
            await account.send(event, E.quote(event.message.id).dumps() + message)

    if msg := cmd_select(event, prefix=['.']):
        rpl = await cmd_generator(message=msg, user_id=event.user.id,platform='red', message_id=event.message.id, active_send_func=send_active_message)
        if not rpl:
            pass
        else:
            modified_results = []
            for item in rpl:
                if item['type'] == 'string':
                    # 处理字符串类型的结果,可能是文本消息
                    text_message = item['string'].replace("<", "&lt;").replace(">", "&gt;")
                    modified_results.append(text_message)
                elif item['type'] == 'base64':
                    # 处理Base64编码的图像数据
                    base64_data = item['string']
                    # 将Base64数据包裹在^IMG=xxx^中并添加到文本中
                    image_tag = f'<img src="data:image/png;base64,{base64_data}"/>'

                    modified_results.append(image_tag)
            result_string = ''.join(modified_results)
            await account.send(event, E.quote(event.message.id).dumps() + result_string)

在常用的qqbot中,群号就是 channel_id
当你使用QQ号作为 user_id 时,platform 默认 red

❌ 同步多线程支持

  • 4.0.0 后不再支持同步多线程,因为本人用不到。实现起来很简单,本包在导入时完成了 Alconna 的初始化,避免了多线程 context 错误,因此可以在多线程中使用 tsugu,欢迎有志人士一同完善。

⚙️ api settings

安装 tsugu 后可以直接导入 tsugu_api_coresettings 修改配置项。

from tsugu_api_core import settings

...

tsugu_api settings 详细内容


Project details


Release history Release notifications | RSS feed

This version

4.0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tsugu-4.0.1.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

tsugu-4.0.1-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file tsugu-4.0.1.tar.gz.

File metadata

  • Download URL: tsugu-4.0.1.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for tsugu-4.0.1.tar.gz
Algorithm Hash digest
SHA256 c178d6f5bdbaa3e71cb32d242fdf23e9951c63ffcbd45366c86ea4fe19bba4fe
MD5 e83fa5ad9ae3eb438d0d30b5df615144
BLAKE2b-256 fb882e6318eabaf5cc79b3cfdc11ede35815b98314e6d552a23e6d885967e9f9

See more details on using hashes here.

File details

Details for the file tsugu-4.0.1-py3-none-any.whl.

File metadata

  • Download URL: tsugu-4.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for tsugu-4.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 529b2484e5f344bab644cb6308c431e4c372d757a8744c0841297524614c4967
MD5 3c0fb329448d3665e028608fb2999b7d
BLAKE2b-256 a17259d9c4bd40e665cb4bc6f89eb41158aefbc9c4b2c51097ba84ebbd570f7d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page