Remote AI Agent 是通过调用远程的 AI Agent 来执行任务。主要实现方式:
thread
来调用.curl.sh
脚本,执行远程 AI Agent 的任务
示例:
---
variables:
"story": /any/ { thread(".shire/shell/dify-epic-story.curl.sh") | jsonpath("$.answer", true) }
---
代码定位示例
入口 Shire 文件
---
name: "定位待变更代码"
variables:
"story": /any/ { thread(".shire/shell/dify-user-story-workflow.curl.sh") | jsonpath("$.answer", true) }
"controllers": /.*.java/ { cat | grep("class\s+([a-zA-Z]*Controller)") }
"services": /.*.java/ { cat | grep("class\s+([a-zA-Z]*Service)") }
"firstController": /CinemaController\.java/ { print }
"firstService": /CinemaController\.java/ { print }
"domainLanguage": /domain-language\.csv/ { cat }
onStreamingEnd: { parseCode | openFile }
---
你是一个网站资深的开发人员,能帮助我定位到代码文件。请根据如下的用户故事,以及对应的 controller, service 名称,选择最合适修改的代码文件
用户故事:
$story
Controller 列表:
$controllers
Service 列表:
$services
这个网站的一些专有名词如下:
$domainLanguage
要求:
如果没有合适的 controller,请给出最合适的 controller 和 service 路径。
Controller 示例路径在:
$firstController
service 示例路径在:
$firstService
你只返回文件名,格式如:`src/main/xxx/DemoController.java`
请严格按格式返回,只返回存在的代码文件,只返回文件路径。
dify-user-story-workflow.curl.sh
代码:
curl -X POST 'https://api.dify.ai/v1/completion-messages' \
--header "Authorization: Bearer ${singleStoryKey}" \
--header 'Content-Type: application/json' \
--data-raw '{
"inputs": {"feature": "Hello, world!", "story_list": "作为购物中心电影观众,我想要提前预订电影场次相关的食物,以便于节省购买食物的时间,更好地安排观影时间。", "story": "添加零食和饮料至购物车影院观众在购票时添加零食和饮料提前准备好观影期间的零食和饮料"},
"response_mode": "streaming",
"user": "phodal"
}'
其中的 singleStoryKey
可以通过在项目中创建 xx.shireEnv.json
来支持,示例:
{
"development": {
"singleStoryKey": "xxxx"
}
}