EasyTalk 模式¶
EasyTalk 是一个用于描述、生成和验证 JSON 模式的 Ruby 库。
基本用法¶
class UserDetail
include EasyTalk::Model
define_schema do
property :name, String
property :age, Integer
end
end
描述即提示¶
关于 instructors 的核心特性之一是它能够将这些描述用作提示的一部分。
class UserDetail
include EasyTalk::Model
define_schema do
description 'Fully extracted user detail'
property :name, String, description: 'Your full name'
property :age, Integer
end
end
模型组合¶
EasyTalk 模型本身可以由其他模型组成。
class Address
include EasyTalk::Model
define_schema do
property :street, String
property :city, String
end
end
class UserDetail
include EasyTalk::Model
define_schema do
property :name, String
property :address, Address
end
end
默认值¶
为了帮助语言模型,我们还可以为值定义默认值。
class UserDetail
include EasyTalk::Model
define_schema do
property :name, String
property :is_student, Boolean, default: false
end
end
数组¶
可以使用 T::Array[]
方法定义数组。
class UserDetail
include EasyTalk::Model
define_schema do
property :name, String
property :friends, T::Array[String]
end
end
枚举¶
可以使用 enum
约束定义枚举。