Flutter多功能工具插件ok_ziggy_tools的使用
Flutter多功能工具插件ok_ziggy_tools的使用
使用说明
本工具用于创建一个目录,供大型语言模型聊天机器人使用。
安装此工具
确保已安装Dart。请按照以下链接中的说明进行安装:
安装完成后,可以使用以下命令安装工具:
dart pub global activate ok_ziggy_tools
创建目录
运行以下命令以生成目录:
zigt create [arguments]
参数说明:
-h, --help:打印帮助信息。-i, --input:包含OpenAPI服务域名的输入文件(默认为domains.json)。
构建过程中会生成多个文件,包括错误日志。这些文件将在构建聊天机器人服务器时使用。
复制文件
将生成的目录复制到目标目录中:
zigt copy [arguments]
参数说明:
-h, --help:打印帮助信息。-t, --targetDir:目标目录(默认为data)。
一旦文件被复制到目标目录,它们将以结构化方式组织,方便聊天机器人服务器使用。
输入文件
输入文件是一个包含托管清单的服务域名列表。工具会在每个域名中查找ai-plugin.json清单,并为其构建目录条目。
示例输入文件domains.json:
[
"ai.abcmouse.com",
"api.speak.com",
"chatwithpdf.sdan.io"
]
更多服务参考:GitHub仓库
生成的文件
聊天机器人需要了解两种类型的服务信息:
- 服务列表:描述可用的服务,允许聊天机器人根据客户端交互决定使用哪个服务。
- 规范文件:描述每个端点及其如何使用和存储远程数据。
服务列表
这是主要的服务目录,用于向聊天机器人广告服务。
示例服务列表:
[
{
"serviceId": "ff57602e9b",
"name": "ABCmouse",
"description": "提供2-8岁儿童的趣味教育活动。"
},
{
"serviceId": "495bc6a9bb",
"name": "Penrose Analyst",
"description": "搜索全球新闻和研究论文。总结Arxiv.org链接。问我最新的新闻!"
},
{
"serviceId": "40dca1ffbe",
"name": "Crypto Market News",
"description": "实时加密货币价格更新、市场洞察和最新新闻的最佳解决方案。"
}
]
规范文件
每个服务都会生成一个规范文件,分为两部分:
- OpenAPI规范:定义端点路径和请求结构。
- 辅助信息:来自AI清单的
description_for_model字段。
示例规范文件:
openapi: "3.0.0"
info:
version: "1.0.0"
title: "OK Ziggy"
description: "作为动态代理,支持新闻、天气、旅行和游戏等服务。"
servers:
- url: "httos://ziggy.zapvine.com/api/v1"
paths:
/services:
get:
summary: 获取可用服务列表
operationId: "getServices"
responses:
"200":
description: 操作成功
# 其他规范...
EXTRA_INFORMATION_TO_ASSISTANT
AI助手的名字叫Ziggy。Ziggy的主要工作是...[其他提示指令]
聊天机器人服务器配置文件
以下文件是聊天机器人服务器使用的配置文件。
API映射文件
此文件将serviceId映射到API服务器的URL。
示例API映射文件:
{
"ff57602e9b": "ai.abcmouse.com/ws/ai/0.1/gpt",
"a3be2a6602": "api.speak.com",
"2d59d0bd16": "chatwithpdf.sdan.io",
"5742d3c9b4": "openai.jettel.de",
"7da6597eed": "plugin.askyourpdf.com"
}
域名映射文件
此文件将serviceId映射到托管清单的域名。该域名被视为服务的唯一ID。
示例域名映射文件:
{
"ff57602e9b": "ai.abcmouse.com",
"a3be2a6602": "api.speak.com",
"2d59d0bd16": "chatwithpdf.sdan.io"
}
内容类型映射文件
此文件将服务路径映射到内容类型。
示例内容类型映射文件:
{
"ff57602e9b/ChatPluginRecommendActivities": "application/json",
"a3be2a6602/translate": "application/json",
"a3be2a6602/explainPhrase": "application/json",
"a3be2a6602/explainTask": "application/json",
"2d59d0bd16/loadPdf": "application/json"
}
初始化服务器项目
此命令初始化运行服务器所需的数据目录:
zigt init
更多关于Flutter多功能工具插件ok_ziggy_tools的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
更多关于Flutter多功能工具插件ok_ziggy_tools的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
ok_ziggy_tools 是一个为 Flutter 开发者提供的多功能工具插件,旨在简化开发过程中的常见任务。它提供了一系列实用功能,包括但不限于网络请求、本地存储、设备信息获取、日志记录等。以下是如何使用 ok_ziggy_tools 插件的基本指南。
1. 安装插件
首先,你需要在 pubspec.yaml 文件中添加 ok_ziggy_tools 依赖:
dependencies:
flutter:
sdk: flutter
ok_ziggy_tools: ^1.0.0 # 请使用最新版本
然后运行 flutter pub get 来安装依赖。
2. 导入插件
在你的 Dart 文件中导入 ok_ziggy_tools:
import 'package:ok_ziggy_tools/ok_ziggy_tools.dart';
3. 使用功能
ok_ziggy_tools 提供了多个模块,你可以根据需要选择使用。
3.1 网络请求
ok_ziggy_tools 提供了简化的网络请求功能。你可以使用 NetworkUtils 类来进行 GET、POST 等请求。
import 'package:ok_ziggy_tools/ok_ziggy_tools.dart';
void fetchData() async {
var response = await NetworkUtils.get('https://jsonplaceholder.typicode.com/posts');
if (response.statusCode == 200) {
print('Data: ${response.body}');
} else {
print('Failed to load data');
}
}
3.2 本地存储
ok_ziggy_tools 提供了本地存储功能,你可以使用 StorageUtils 类来存储和获取数据。
import 'package:ok_ziggy_tools/ok_ziggy_tools.dart';
void saveData() async {
await StorageUtils.saveString('key', 'value');
var value = await StorageUtils.getString('key');
print('Stored value: $value');
}
3.3 设备信息
ok_ziggy_tools 提供了获取设备信息的功能,你可以使用 DeviceUtils 类来获取设备的相关信息。
import 'package:ok_ziggy_tools/ok_ziggy_tools.dart';
void getDeviceInfo() {
var deviceInfo = DeviceUtils.getDeviceInfo();
print('Device ID: ${deviceInfo.deviceId}');
print('Device Model: ${deviceInfo.deviceModel}');
print('OS Version: ${deviceInfo.osVersion}');
}
3.4 日志记录
ok_ziggy_tools 提供了日志记录功能,你可以使用 LogUtils 类来记录日志。
import 'package:ok_ziggy_tools/ok_ziggy_tools.dart';
void logMessage() {
LogUtils.d('This is a debug message');
LogUtils.i('This is an info message');
LogUtils.w('This is a warning message');
LogUtils.e('This is an error message');
}
4. 配置插件
ok_ziggy_tools 允许你进行一些全局配置,例如设置日志级别、网络请求的超时时间等。
import 'package:ok_ziggy_tools/ok_ziggy_tools.dart';
void configureTools() {
LogUtils.setLogLevel(LogLevel.verbose);
NetworkUtils.setTimeout(Duration(seconds: 30));
}

