Trex
Transformer Regular EXpressions
将非结构化数据转换为结构化数据
Trex 可以将你的非结构化数据转换为结构化数据——只需指定正则表达式或上下文无关文法,我们会智能地重构你的数据,使其符合该模式。
安装
要体验 Trex,请查看游乐场。
要安装 Python 客户端:
pip install git+https://github.com/automorphic-ai/trex.git
如果你希望在自己的云中/使用你自己的模型自行托管,请给我们发送邮件。
用法
要使用 Trex,你需要一个 API 密钥,可以通过在 automorphic.ai 注册一个免费账户来获取。
import trex
tx = trex.Trex('<YOUR_AUTOMORPHIC_API_KEY>')
prompt = '''生成以下格式的有效 json 对象:
{
"name": "string",
"age": "number",
"height": "number",
"pets": pet[]
}
在上述对象中,name 是对应人的名字的字符串,age 是对应人的年龄的整数(以英寸为单位),height 是对应人的身高的数字,pets 是宠物数组。
其中 pet 的定义如下:
{
"name": "string",
"species": "string",
"cost": "number",
"dob": "string"
}
在上述对象中,name 是对应宠物名字的字符串,species 是对应宠物种类的字符串,cost 是对应宠物费用的数字,dob 是对应宠物出生日期的字符串。
根据以上信息,生成一个包含以下数据的有效 json 对象:一个名为 dave 的人,30 岁,5 英尺 8 英寸,拥有一只名为 'trex' 的狗。这只狗花费了 100 美元,出生于 2001 年 9 月 11 日。
'''
json_schema = {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"age": {
"type": "number"
},
"height": {
"type": "number"
},
"pets": {
"type": "array",
"items": [{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"species": {
"type": "string"
},
"cost": {
"type": "number"
},
"dob": {
"type": "string"
}
}
}]
}
}
}
print(tx.generate_json(prompt, json_schema=json_schema).response)
# 以上生成:
# {
# "name": "dave",
# "age": 30,
# "height": 58,
# "pets": [
# {
# "name": "trex",
# "species": "dog",
# "cost": 100,
# "dob": "2008-10-27"
# }
# ]
# }
路线图
- 结构化 JSON 生成
- 结构化自定义 CFG 生成
- 结构化自定义正则生成
- 显著的速度提升
- 基于 JSON 模式生成
- 自动提示生成非结构化 ETL
- 更智能的模型
如果你对使用 Trex 感兴趣或需要帮助,有想法或想要贡献,请加入我们的 Discord 或给我们发送邮件。
关注我们的 Twitter 以获取更新。