由 Carolyn Vigil, Ben West, Lauren Hollis 和 Mike Haggerty于2025年1月30日发布于 ,
分享
政府和非营利组织在评估资助提案时面临重大挑战:从数百份详细的提交材料中筛选出独特优点的申请,以识别出最有前景的项目。这一繁琐且耗时的过程通常是资助管理的第一步,对推动有意义的社会影响至关重要。
AWS 社会责任与影响(SRI)团队认识到可以利用增强这一功能。该团队开发了一种创新解决方案,通过使用 优化资助提案审核和评估流程。Amazon Bedrock 是一项完全托管的服务,允许您通过单一 API 使用领先 AI 公司(如 AI21Labs、Anthropic、Cohere、Meta、Mistral AI、Stability AI 和 Amazon)提供的高性能基础模型(FMs),以及构建生成式 AI 应用所需的广泛功能,以确保安全性、隐私性和负责任的 AI 。
历史上,AWS 健康公平倡议的申请是由审核委员会手动审核的,每个周期需要 14 天或更长时间才能完成所有申请的审核。该项目的平均每个周期收到 90份申请。2024 年 6 月的 AWS 健康公平倡议申请周期收到 139份申请,是该项目迄今为止最大的一次涌入。如果手动处理这些申请,预计审核委员会会花费约 21 天的时间。采用 Amazon Bedrock的方法将审核时间缩短至 2 天(减少了 90%)。
目标是提高审核流程的效率和一致性,使客户能够更快地构建具有影响力的解决方案。通过将 Amazon Bedrock 的高级 NLP能力与精心设计的提示工程相结合,团队创建了一种动态、数据驱动且公平的解决方案,展示了大型语言模型 (LLMs) 在社会影响领域的变革潜力。
在本文中,我们探讨了该团队基于 Amazon Bedrock 的资助提案审核解决方案的技术实现细节和关键经验,为希望优化其资助管理流程的组织提供蓝图。
提示工程是指设计高效提示以指导生成式 AI 模型(如 LLMs)产生预期输出的艺术。通过精心设计提示,实践者可以发挥生成式 AI系统的全部潜力,并将其应用于各种实际场景。
在为 Amazon Bedrock模型构建审核资助提案的提示时,我们采用了多种提示工程技术,以确保模型的响应量身定制、结构化且可操作。这包括分配给模型特定的人物角色、提供逐步指示和规定所需的输出格式。
我们首先为模型分配了公共卫生专家的角色,专注于改善弱势群体的医疗卫生结果。这一背景帮助模型从主题专家 (SME) 的角度评估提案,全面考虑全球挑战和社区层面的影响。通过明确定义角色,我们确保模型的响应符合预期的评估视角。
接下来,我们将审核过程拆分为一组结构化的指令,以便模型遵循。包括审核提案、在特定维度(影响潜力、创新、可行性、可持续性)上进行评估,然后提供总体摘要和评分。概述这些逐步指令为模型的每个任务元素提供了明确的指导,有助于产生全面一致的评估。
最后,我们指定所需的输出格式为 JSON,明确包括维度评估、总体摘要和整体评分的不同部分。规范这种结构化响应格式确保模型的输出可被我们的资助审核团队读取、存储和分析,而不是以自由格式文本交付。这种对输出的控制有助于精简模型评估的后续使用。
通过结合角色分配、逐步指令和输出格式化等提示工程技术,我们能够制定出能够引导模型给出全面、客观且可操作的资助提案评估的提示。这种结构化的方法使我们能够有效利用模型的能力以支持我们的资助审核流程,实现可扩展和高效的管理。
为了展示和测试动态提案审核解决方案的能力,我们使用、Amazon Bedrock 和
构建了一个快速原型实现。需要注意的是,该实现并不打算用于生产,而是作为一个概念验证和进一步开发的起点。该应用程序允许用户定义和保存多种角色和评估标准,这些角色和标准在审核提案时可以动态应用。这种方法使每个提案能够根据指定标准进行量身定制和相关的评估。
应用程序的架构包括几个关键组件,我们将在本节中讨论。
团队使用 DynamoDB(一个 NoSQL 数据库)存储角色、评估标准和提交的提案。存储在 DynamoDB 中的数据被发送到 Streamlit 作为 web 应用程序界面。在 Streamlit 上,团队将角色和评估标准添加到提示中,并将提示发送到 Amazon Bedrock。
from api.personas import Persona from api.rubrics import Rubric fromapi.submissions import Submission
bedrock = boto3.client("bedrock-runtime", region_name="us-east-1")
def _construct_prompt(persona: Persona, rubric: Rubric, submission:
Submission): rubric_dimensions = [
f"{dimension['name']}|{dimension['description']}|{dimension['weight']}" fordimension in rubric.dimensions ]
# 在维度列表前添加提示所期望的表头
rubric_dimensions[:0] = ["dimension_name|dimension_description|dimension_weight"]
rubric_string = "\n".join(rubric_dimensions)
print(rubric_string)
with open("prompt/prompt_template.txt", "r") as prompt:
prompt = prompt.read()
print(prompt)
return prompt.format(
PROPOSAL=submission.content,
PERSONA=persona.description,
RUBRIC=rubric_string,
)
Amazon Bedrock 使用 Anthropic 的 Claude 3 Sonnet FM根据提示评估提交的提案。模型的提示是基于所选择的角色和评估标准动态生成的。Amazon Bedrock 会将评估结果返回 Streamlit 供团队审核。
Rubric): prompt = _construct_prompt(persona, rubric, submission)
body = json.dumps(
{
"anthropic_version": "",
"max_tokens": 2000,
"temperature": 0.5,
"top_p": 1,
"messages": [{"role": "user", "content": prompt}],
}
)
response = bedrock.invoke_model(
body=body, modelId="anthropic.claude-3-haiku-20240307-v1:0"
)
response_body = json.loads(response.get("body").read())
return response_body.get("content")[0].get("text")
以下图表展示了前述内容的工作流步骤:
删除)
工作流包括以下步骤:
删除)
![用户界面示例
删除)
这个快速原型展示了可扩展且灵活的提案审核流程的潜力,使组织能够:
在整个实现过程中,AWS SRI 团队专注于创建互动和用户友好的体验。通过与 Streamlit应用程序的实际操作以及观察动态角色和评分标准选择所产生的影响,用户可以获得构建 AI 驱动应用程序的实用经验,以应对实际挑战。
虽然快速原型展示了该解决方案的潜力,但生产级实现需要更多考虑和额外的 AWS 服务。以下是一些关键考虑因素:
通过使用全面的 AWS 服务组合并遵循安全性、可扩展性和负责任的 AI的最佳实践,组织可以构建一套符合自身要求的生产就绪解决方案,同时实现合规性、可靠性以及成本效益。
依靠 Amazon Bedrock 和有效的提示工程,AWS SRI 能在几天内审核资助提案并将奖励授予客户,而非几周。这个项目中开发的技能,例如使用 Streamlit 构建 web 应用程序、与 NoSQL 数据库如 DynamoDB 集成以及自定义生成式 AI提示,具有高度转移性,并适用于广泛的行业和用例。
![Carolyn Vigil删除)CarolynVigil 是 AWS社会责任和影响客户参与的全球负责人。她推动一些利用云计算实现全球社会影响的战略举措。作为一名热衷于支持弱势群体的倡导者,她共同创办了两个非营利组织,服务于具有发展性障碍的人群及其家庭。闲暇时间,Carolyn喜欢与家人和朋友一起进行山区冒险。
![Lauren Hollis删除)LaurenHollis 是 AWS 社会责任和影响的项目经理。她利用自己在经济学、医疗研究和技术方面的背景,帮助使命驱动的组织利用 AWS云技术实现社会影响。闲暇时,Lauren 喜欢阅读和弹奏钢琴或大提琴。
![Ben West删除)BenWest 是一名实践者,拥有机器学习、大数据分析和全栈软件开发的经验。作为 AWS 社会责任与影响团队的技术项目经理,Ben 利用各种云、边缘和物联网 (IoT) 技术开发创新原型,帮助公共部门组织在全球产生积极影响。Ben 是一名退伍军人,喜欢烹饪和户外活动。
![Mike Haggerty删除)MikeHaggerty 是亚马逊网络服务 (AWS) 的高级系统开发工程师(Sr. SysDE),工作于 PACE-EDGE 团队。在这一角色中,他为 AWS在全球公共部门 (WWPS) 组织的 PACE(原型设计与客户工程)团队的边缘计算项目贡献力量。在专业业务之外,Mike 还担任宠物治疗志愿者,和他的狗 Gnocchi 一起在当地社区设施提供支持服务。
加载评论
Leave a Reply