在本教程中,您将了解如何打造由生成式 AI 驱动的个人造型师。本教程利用 IBM® Granite Vision 3.2 大语言模型处理图像输入,并利用 Granite 3.2最新的增强推理能力生成可定制的服装搭配创意。
您是否经常在想这样的问题:“我今天穿什么?面对满柜的衣服,我甚至不知道从何下手!”我们很多人都面临着同样的困扰。借助前沿的人工智能 (AI) 模型,这个难题可以迎刃而解。
我们的 AI 驱动解决方案由以下阶段组成:
3. 提交输入后,多模态 Granite Vision 3.2 模型会遍历图片列表,并返回以下输出:
4. 具备增强推理能力的 Granite 3.2 模型此时便化身为一名时尚造型师。LLM 利用 Vision 模型的输出来提供适合用户特定场合的穿搭建议。
5. 装备建议、用户上传的物品数据框和所述个性化推荐中的图片都会返回给用户。
您需要一个 IBM® Cloud 帐户才能创建 watsonx.ai™项目。
要使用 watsonx 应用程序编程接口 (API),您需要完成以下步骤。注意,您也可以在 GitHub 上访问本教程。
使用您的 IBM Cloud 帐户登录 watsonx.ai。
创建一个 watsonx.ai 项目。
您可以从项目内部获取项目 ID。点击管理选项卡。然后,从常规页面的详细信息部分复制项目 ID。您需要此 ID 来完成本教程。
创建 watsonx.ai 运行时服务实例(选择 Lite 计划,这是一个免费实例)。
生成 API 密钥。
将 watsonx.ai 运行时服务与您在 watsonx.ai 中创建的项目关联。
为了在使用此 AI 工具时获得更具交互性的体验,请克隆 GitHub 存储库,并按照 AI 造型师项目中的 README.md 文件中的设置说明,在本地计算机上启动 Streamlit 应用程序。或者,如果您倾向于逐步完成操作,可以创建一个 Jupyter Notebook 并继续学习本教程。
本教程需要一些库和模块。请确保导入以下内容;如果尚未安装,可以通过 pip 快速安装来解决此问题。
要设置我们的凭据,我们需要您在第 1 步中生成的
我们可以使用
该
我们还可以通过使用
为了以 LLM 可理解的方式对我们的图片进行编码,我们会先将它们编码为字节,然后将其解码为 UTF-8 格式。在这种情况下,我们的图片位于本地图片目录中。您可以在我们的 GitHub 存储库的 AI 造型师目录中找到示例图片。
现在我们已经加载图片并进行编码,可以查询 Vision 模型了。我们的提示信息需要具体明确,以限制模型的创造生,同时寻求有效、合规的 JSON 输出。我们将每张图片的描述、类别和场合存储在一个列表中,名为
输出:
{
"description": "A pair of polished brown leather dress shoes with a brogue detailing on the toe box and a classic oxford design.",
"category": "shoes",
"occasion": "formal"
}
{
"description": "A pair of checkered trousers with a houndstooth pattern, featuring a zippered pocket and a button closure at the waist.",
"category": "pants",
"occasion": "casual"
}
{
"description": "A light blue, button-up shirt with a smooth texture and a classic collar, suitable for casual to semi-formal occasions.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "A pair of khaki pants with a buttoned waistband and a button closure at the front.",
"category": "pants",
"occasion": "casual"
}
{
"description": "A blue plaid shirt with a collar and long sleeves, featuring chest pockets and a button-up front.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "A pair of bright orange, short-sleeved t-shirts with a crew neck and a simple design.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "A pair of blue suede sneakers with white laces and perforations, suitable for casual wear.",
"category": "shoes",
"occasion": "casual"
}
{
"description": "A pair of red canvas sneakers with white laces, isolated on a white background.",
"category": "shoes",
"occasion": "casual"
}
{
"description": "A pair of grey dress pants with a smooth texture and a classic design, suitable for formal occasions.",
"category": "pants",
"occasion": "formal"
}
{
"description": "A plain white T-shirt with short sleeves and a crew neck, displayed from the front and back.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "A black short-sleeved t-shirt with a crew neck and a simple design.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "Black pants with a zippered pocket and a buttoned fly, showing the waistband and pocket details.",
"category": "pants",
"occasion": "casual"
}
{
"description": "A pair of tan leather boots with a chunky sole and a high-top design, suitable for casual wear.",
"category": "shoes",
"occasion": "casual"
}
现在我们已经对每件衣服和鞋子进行了分类,推理模型可以更轻松地为所选场合生成一套穿搭。让我们实例化并查询推理模型。
为了将文件名与图片描述对应起来,我们可以枚举图片描述列表,并为每个单品在各团体活动的字段中创建一个字典列表,其中包含描述、类别、场合和文件名。
现在,让我们使用以下列表通过指定标准来查询 Granite 3.2 推理模型,为我们生成一套穿搭:
输出:
以下是我的思考过程:
-这套穿搭必须适合秋季早晨在公园的休闲场合。
- 我将选择一件衬衫、一条长裤和一双鞋子,确保它们都符合“休闲”这个场合类别。
- 我会避免正式或过于花哨的单品,选择那些舒适且适合公园活动的衣服。
以下是我的回复:
对于秋季早晨在公园的休闲场合,我建议如下穿搭:
1. **衬衫**:一件带有领口和长袖的蓝色格子衬衫(文件:“image13.jpeg”)
- 格子图案是经典款,适合秋季,与休闲的公园环境很搭。长袖可以在一定程度上抵御早晨的凉风。
2. **裤子**:一条卡其裤,配有钮扣腰带和前部纽扣(文件:“image7.jpeg”)
- 卡其色是一个百搭的选择,既符合休闲氛围,又能与格子衬衫形成很好的平衡。这身搭配实用又舒适,适合四处走动。
3. **鞋子**:一双棕褐色皮靴,厚底高帮设计(文件:“image3.jpeg”)
- 棕褐色皮靴是一个既时尚又舒适的选择。厚实的鞋底能提供良好的抓地力和支撑性,非常适合在公园小径或不平坦的地面上行走。
这套组合看起来既休闲又得体,非常适合早晨出门的场合,同时也兼顾了舒适性和实用性。
有了这个生成的描述,我们现在可以展示模型推荐的单品了。为此,我们只需提取文件名即可。如果模型两次提及相同的文件名,检查图片是否已经展示过就非常重要了。我们可以通过在以下列表中存储已展示的图片来做到这一点:
在本教程中,您构建了一个使用 AI 为用户的特定活动提供造型建议的系统。利用用户的照片或衣物截图,系统对穿搭进行定制,以满足用户的特定标准。Granite Vision 3-2-2b 模型对于标记和分类每个单品至关重要。此外,Granite-3-2-8b-instruct 模型利用其推理能力来生成个性化的穿搭创意。
基于此应用,后续可以开展的拓展步骤包括:
使用面向 AI 构建器的新一代企业级开发平台 IBM watsonx.ai,可以训练、验证、调整和部署生成式 AI、基础模型和机器学习功能。使用一小部分数据,即可在很短的时间内构建 AI 应用程序。
借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。
通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。