前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于一个很久之前的python库tencent的API开发有趣应用

基于一个很久之前的python库tencent的API开发有趣应用

原创
作者头像
用户11310872
发布2024-10-17 18:28:02
1170
发布2024-10-17 18:28:02
举报
文章被收录于专栏:人工智能

这篇博客给大家介绍一个python库 tencent (https://pypi.org/project/tencent/) 以及对应三方API的开发流程,以公众号后台通过腾讯服务器接入自动系统回复为例。基于微信公众号后台开发自动回复,或者利用多模态信息回复用户输入,需要自己有独立服务器和相关的后端框架才能验证成功。这样用户给公众号/订阅号发信息的时候,公众号后台会给你填写的服务器地址发送POST请求,经过验证之后你的服务端就可以给公众号提供自动回复的服务了。

1. python库tencent安装

安装 tencent 库

代码语言:txt
复制
pip install tencent

验证是否安装成功

代码语言:txt
复制
import tencent

如何可以看到一个"tencent"的logo或者是小马哥和企鹅的灰度图就代表成功了。

python package tencent import 成功
python package tencent import 成功
python package tencent import 成功
python package tencent import 成功

2. 三方API 开发Guidelines

可以在 github repo(https://github.com/AI-Hub-Admin/tencent) 创建MR,Repo管理员会检查API的目标和安全性决定是否在合并。具体的开发 guidelines参考 (http://www.deepnlp.org/blog?category=tencent)

2.1 新开发的API 继承基类 BaseAPI

假设我们要实现一个名字为 "api_demo"的API,输入参数和输出参数支持可变长。

入参:

*args: 位置参数的元组

**kwargs: key-value类型入参

出参:

result: dict

代码语言:txt
复制
class BaseAPI(object):
    """docstring for ClassName"""
    def __init__(self, configs):
        self.configs = configs
        self.name = API_NAME_BASE


    def api(self, args, kwargs):
        """
        """


class DemoAPI(BaseAPI):

    """docstring for ClassName"""
    def __init__(self, configs):
        super(DemoAPI, self).__init__(configs)
        self.name = API_NAME_DEMO

    def api(self, args, kwargs):
        """
            Args:
                args: tuple of args,  (input)
                kwargs: key value dict
            Return:
                res_dict: dict, multi-modal text text, image, audio and video
        """
        api_input = ""
        if len(args) > 0:
            api_input = args[0]

        res_dict = {}
        res_dict["output"] = api_input
        return res_dict

2.2 在__init__.py文件中注册你的API

在文件 "/tencent/__init__.py" 中你可以 import 你的API,然后添加一行代码来注册你的API,之后就可以调用了。

注意:API类的name属性 (DemoAPI.name) 是区分你的API的唯一标识符号,admin 会检查命名冲突,不能影响。

代码语言:txt
复制
from .base import *

SUPPORTED_APIS[DemoAPI(None).name] = {KEY_IMPL: DemoAPI}

2.3 通过统一接口调用你的API

代码语言:txt
复制
import tencent

your_api_name="xxx"
res = tencent.api(your_api_name)

2.4 单元测试

在顶层tencent目录的 tests目录下 (/tencent/tests/*.py),需要写你的单元测试,缺少单元测试的MR不会被考虑合并到 master分支。参考下面的 github的tests地址 github repo (https://github.com/AI-Hub-Admin/tencent/tree/main/tests)

代码库和地址

https://github.com/AI-Hub-Admin/tencent

https://github.com/AI-Hub-Admin/FinanceAgent

https://github.com/AI-Hub-Admin/HealthcareAgent

https://github.com/AI-Hub-Admin/AI-Agents-Visualization

http://www.deepnlp.org/workspace/dialogue_visualization

http://www.deepnlp.org/workspace/agent_visualization

http://www.deepnlp.org/store/pub/pub-openai-o1

http://www.deepnlp.org/store/pub/pub-chatgpt-openai

http://www.deepnlp.org/blog/introduction-to-multimodal-generative-models

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. python库tencent安装
  • 2. 三方API 开发Guidelines
    • 2.1 新开发的API 继承基类 BaseAPI
    • 2.2 在__init__.py文件中注册你的API
      • 2.3 通过统一接口调用你的API
        • 2.4 单元测试
        • 代码库和地址
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档