Bootstrap

ChatGPT Prompting开发实战(三)

一、关于chaining prompts与CoT的比较

前面谈到的CoT的推理过程,可以比作是一次性就烹调好一顿大餐,那么接下来要说的“chaining prompts”,其背后的理念是分多次来完成这样一项复杂任务,每次只完成其中一步或者一个子任务。核心之处在于,你需要在自己的代码中来维护状态(而不是LLM)。另外可能需要使用到外部的第三方工具,譬如网页搜索或者数据库等等,LLM起到的是驱动引擎的作用。

二、基于chaining prompts案例剖析prompt的分步应用

首先来看这样一个system message样例,在这个prompt中,给出了category和product的设定,提示如果用户问题提到的category或者product在设定列表中不存在,那么返回为空,另外一个product必须关联到一个正确的category:

system_message = f"""

You will be provided with customer service queries. \

The customer service query will be delimited with \

{delimiter} characters.

Output a python list of objects, where each object has \

the following format:

    'category': <one of Computers and Laptops, \

    Smartphones and Accessories, \

    Televisions and Home Theater Systems, \

    Gaming Consoles and Accessories,

    Audio Equipment, Cameras and Camcorders>,

OR

    'products': <a list of products that must \

    be found in the allowed products below>

Where the categories and products must be found in \

the customer service query.

If a product is mentioned, it must be associated with \

the correct category in the allowed products list below.

If no products or categories are found, output an \

empty list.

Allowed products:

Computers and Laptops category:

TechPro Ultrabook

BlueWave Gaming Laptop

PowerLite Convertible

TechPro Desktop

BlueWave Chromebook

Smartphones and Accessories category:

SmartX ProPhone

MobiTech PowerCase

SmartX MiniPhone

MobiTech Wireless Charger

SmartX EarBuds

Televisions and Home Theater Systems category:

CineView 4K TV

SoundMax Home Theater

CineView 8K TV

SoundMax Soundbar

CineView OLED TV

Gaming Consoles and Accessories category:

GameSphere X

ProGamer Controller

GameSphere Y

ProGamer Racing Wheel

GameSphere VR Headset

Audio Equipment category:

AudioPhonic Noise-Canceling Headphones

WaveSound Bluetooth Speaker

AudioPhonic True Wireless Earbuds

WaveSound Soundbar

AudioPhonic Turntable

Cameras and Camcorders category:

FotoSnap DSLR Camera

ActionCam 4K

FotoSnap Mirrorless Camera

ZoomMaster Camcorder

FotoSnap Instant Camera

Only output the list of objects, with nothing else.

"""

给出设定的user message如下,调用方法给出查询结果:

打印结果信息如下,格式匹配上面系统的设定:

再给出一个user message:

my router isn't working

这次问题提到的router在系统产品设定中不存在,所以返回一个空的列表:

接下来根据从用户问题中提取的category和product信息来进一步获取products的细节,以下是系统设定的具体内容,为了演示方便,这些产品信息直接以文本的形式呈现:

products = {

    "TechPro Ultrabook": {

        "name": "TechPro Ultrabook",

        "category": "Computers and Laptops",

        "brand": "TechPro",

        "model_number": "TP-UB100",

        "warranty": "1 year",

        "rating": 4.5,

        "features": ["13.3-inch display", "8GB RAM", "256GB SSD", "Intel Core i5 processor"],

        "description": "A sleek and lightweight ultrabook for everyday use.",

        "price": 799.99

    },

    "BlueWave Gaming Laptop": {

        "name": "BlueWave Gaming Laptop",

        "category": "Computers and Laptops",

        "brand": "BlueWave",

        "model_number": "BW-GL200",

        "warranty": "2 years",

        "rating": 4.7,

        "features": ["15.6-inch display", "16GB RAM", "512GB SSD", "NVIDIA GeForce RTX 3060"],

        "description": "A high-performance gaming laptop for an immersive experience.",

        "price": 1199.99

    },

    "PowerLite Convertible": {

        "name": "PowerLite Convertible",

        "category": "Computers and Laptops",

        "brand": "PowerLite",

        "model_number": "PL-CV300",

        "warranty": "1 year",

        "rating": 4.3,

        "features": ["14-inch touchscreen", "8GB RAM", "256GB SSD", "360-degree hinge"],

        "description": "A versatile convertible laptop with a responsive touchscreen.",

        "price": 699.99

    },

    "TechPro Desktop": {

        "name": "TechPro Desktop",

        "category": "Computers and Laptops",

        "brand": "TechPro",

        "model_number": "TP-DT500",

        "warranty": "1 year",

        "rating": 4.4,

        "features": ["Intel Core i7 processor", "16GB RAM", "1TB HDD", "NVIDIA GeForce GTX 1660"],

        "description": "A powerful desktop computer for work and play.",

        "price": 999.99

    },

    "BlueWave Chromebook": {

        "name": "BlueWave Chromebook",

        "category": "Computers and Laptops",

        "brand": "BlueWave",

        "model_number": "BW-CB100",

        "warranty": "1 year",

        "rating": 4.1,

        "features": ["11.6-inch display", "4GB RAM", "32GB eMMC", "Chrome OS"],

        "description": "A compact and affordable Chromebook for everyday tasks.",

        "price": 249.99

    },

    "SmartX ProPhone": {

        "name": "SmartX ProPhone",

        "category": "Smartphones and Accessories",

        "brand": "SmartX",

        "model_number": "SX-PP10",

        "warranty": "1 year",

        "rating": 4.6,

        "features": ["6.1-inch display", "128GB storage", "12MP dual camera", "5G"],

        "description": "A powerful smartphone with advanced camera features.",

        "price": 899.99

    },

    "MobiTech PowerCase": {

        "name": "MobiTech PowerCase",

        "category": "Smartphones and Accessories",

        "brand": "MobiTech",

        "model_number": "MT-PC20",

        "warranty": "1 year",

        "rating": 4.3,

        "features": ["5000mAh battery", "Wireless charging", "Compatible with SmartX ProPhone"],

        "description": "A protective case with built-in battery for extended usage.",

        "price": 59.99

    },

    "SmartX MiniPhone": {

        "name": "SmartX MiniPhone",

        "category": "Smartphones and Accessories",

        "brand": "SmartX",

        "model_number": "SX-MP5",

        "warranty": "1 year",

        "rating": 4.2,

        "features": ["4.7-inch display", "64GB storage", "8MP camera", "4G"],

        "description": "A compact and affordable smartphone for basic tasks.",

        "price": 399.99

    },

    "MobiTech Wireless Charger": {

        "name": "MobiTech Wireless Charger",

        "category": "Smartphones and Accessories",

        "brand": "MobiTech",

        "model_number": "MT-WC10",

        "warranty": "1 year",

        "rating": 4.5,

        "features": ["10W fast charging", "Qi-compatible", "LED indicator", "Compact design"],

        "description": "A convenient wireless charger for a clutter-free workspace.",

        "price": 29.99

    },

    "SmartX EarBuds": {

        "name": "SmartX EarBuds",

        "category": "Smartphones and Accessories",

        "brand": "SmartX",

        "model_number": "SX-EB20",

        "warranty": "1 year",

        "rating": 4.4,

        "features": ["True wireless", "Bluetooth 5.0", "Touch controls", "24-hour battery life"],

        "description": "Experience true wireless freedom with these comfortable earbuds.",

        "price": 99.99

    },

    "CineView 4K TV": {

        "name": "CineView 4K TV",

        "category": "Televisions and Home Theater Systems",

        "brand": "CineView",

        "model_number": "CV-4K55",

        "warranty": "2 years",

        "rating": 4.8,

        "features": ["55-inch display", "4K resolution", "HDR", "Smart TV"],

        "description": "A stunning 4K TV with vibrant colors and smart features.",

        "price": 599.99

    },

    "SoundMax Home Theater": {

        "name": "SoundMax Home Theater",

        "category": "Televisions and Home Theater Systems",

        "brand": "SoundMax",

        "model_number": "SM-HT100",

        "warranty": "1 year",

        "rating": 4.4,

        "features": ["5.1 channel", "1000W output", "Wireless subwoofer", "Bluetooth"],

        "description": "A powerful home theater system for an immersive audio experience.",

        "price": 399.99

    },

    "CineView 8K TV": {

        "name": "CineView 8K TV",

        "category": "Televisions and Home Theater Systems",

        "brand": "CineView",

        "model_number": "CV-8K65",

        "warranty": "2 years",

        "rating": 4.9,

        "features": ["65-inch display", "8K resolution", "HDR", "Smart TV"],

        "description": "Experience the future of television with this stunning 8K TV.",

        "price": 2999.99

    },

    "SoundMax Soundbar": {

        "name": "SoundMax Soundbar",

        "category": "Televisions and Home Theater Systems",

        "brand": "SoundMax",

        "model_number": "SM-SB50",

        "warranty": "1 year",

        "rating": 4.3,

        "features": ["2.1 channel", "300W output", "Wireless subwoofer", "Bluetooth"],

        "description": "Upgrade your TV's audio with this sleek and powerful soundbar.",

        "price": 199.99

    },

    "CineView OLED TV": {

        "name": "CineView OLED TV",

        "category": "Televisions and Home Theater Systems",

        "brand": "CineView",

        "model_number": "CV-OLED55",

        "warranty": "2 years",

        "rating": 4.7,

        "features": ["55-inch display", "4K resolution", "HDR", "Smart TV"],

        "description": "Experience true blacks and vibrant colors with this OLED TV.",

        "price": 1499.99

    },

    "GameSphere X": {

        "name": "GameSphere X",

        "category": "Gaming Consoles and Accessories",

        "brand": "GameSphere",

        "model_number": "GS-X",

        "warranty": "1 year",

        "rating": 4.9,

        "features": ["4K gaming", "1TB storage", "Backward compatibility", "Online multiplayer"],

        "description": "A next-generation gaming console for the ultimate gaming experience.",

        "price": 499.99

    },

    "ProGamer Controller": {

        "name": "ProGamer Controller",

        "category": "Gaming Consoles and Accessories",

        "brand": "ProGamer",

        "model_number": "PG-C100",

        "warranty": "1 year",

        "rating": 4.2,

        "features": ["Ergonomic design", "Customizable buttons", "Wireless", "Rechargeable battery"],

        "description": "A high-quality gaming controller for precision and comfort.",

        "price": 59.99

    },

    "GameSphere Y": {

        "name": "GameSphere Y",

        "category": "Gaming Consoles and Accessories",

        "brand": "GameSphere",

        "model_number": "GS-Y",

        "warranty": "1 year",

        "rating": 4.8,

        "features": ["4K gaming", "500GB storage", "Backward compatibility", "Online multiplayer"],

        "description": "A compact gaming console with powerful performance.",

        "price": 399.99

    },

    "ProGamer Racing Wheel": {

        "name": "ProGamer Racing Wheel",

        "category": "Gaming Consoles and Accessories",

        "brand": "ProGamer",

        "model_number": "PG-RW200",

        "warranty": "1 year",

        "rating": 4.5,

        "features": ["Force feedback", "Adjustable pedals", "Paddle shifters", "Compatible with GameSphere X"],

        "description": "Enhance your racing games with this realistic racing wheel.",

        "price": 249.99

    },

    "GameSphere VR Headset": {

        "name": "GameSphere VR Headset",

        "category": "Gaming Consoles and Accessories",

        "brand": "GameSphere",

        "model_number": "GS-VR",

        "warranty": "1 year",

        "rating": 4.6,

        "features": ["Immersive VR experience", "Built-in headphones", "Adjustable headband", "Compatible with GameSphere X"],

        "description": "Step into the world of virtual reality with this comfortable VR headset.",

        "price": 299.99

    },

    "AudioPhonic Noise-Canceling Headphones": {

        "name": "AudioPhonic Noise-Canceling Headphones",

        "category": "Audio Equipment",

        "brand": "AudioPhonic",

        "model_number": "AP-NC100",

        "warranty": "1 year",

        "rating": 4.6,

        "features": ["Active noise-canceling", "Bluetooth", "20-hour battery life", "Comfortable fit"],

        "description": "Experience immersive sound with these noise-canceling headphones.",

        "price": 199.99

    },

    "WaveSound Bluetooth Speaker": {

        "name": "WaveSound Bluetooth Speaker",

        "category": "Audio Equipment",

        "brand": "WaveSound",

        "model_number": "WS-BS50",

        "warranty": "1 year",

        "rating": 4.5,

        "features": ["Portable", "10-hour battery life", "Water-resistant", "Built-in microphone"],

        "description": "A compact and versatile Bluetooth speaker for music on the go.",

        "price": 49.99

    },

    "AudioPhonic True Wireless Earbuds": {

        "name": "AudioPhonic True Wireless Earbuds",

        "category": "Audio Equipment",

        "brand": "AudioPhonic",

        "model_number": "AP-TW20",

        "warranty": "1 year",

        "rating": 4.4,

        "features": ["True wireless", "Bluetooth 5.0", "Touch controls", "18-hour battery life"],

        "description": "Enjoy music without wires with these comfortable true wireless earbuds.",

        "price": 79.99

    },

    "WaveSound Soundbar": {

        "name": "WaveSound Soundbar",

        "category": "Audio Equipment",

        "brand": "WaveSound",

        "model_number": "WS-SB40",

        "warranty": "1 year",

        "rating": 4.3,

        "features": ["2.0 channel", "80W output", "Bluetooth", "Wall-mountable"],

        "description": "Upgrade your TV's audio with this slim and powerful soundbar.",

        "price": 99.99

    },

    "AudioPhonic Turntable": {

        "name": "AudioPhonic Turntable",

        "category": "Audio Equipment",

        "brand": "AudioPhonic",

        "model_number": "AP-TT10",

        "warranty": "1 year",

        "rating": 4.2,

        "features": ["3-speed", "Built-in speakers", "Bluetooth", "USB recording"],

        "description": "Rediscover your vinyl collection with this modern turntable.",

        "price": 149.99

    },

    "FotoSnap DSLR Camera": {

        "name": "FotoSnap DSLR Camera",

        "category": "Cameras and Camcorders",

        "brand": "FotoSnap",

        "model_number": "FS-DSLR200",

        "warranty": "1 year",

        "rating": 4.7,

        "features": ["24.2MP sensor", "1080p video", "3-inch LCD", "Interchangeable lenses"],

        "description": "Capture stunning photos and videos with this versatile DSLR camera.",

        "price": 599.99

    },

    "ActionCam 4K": {

        "name": "ActionCam 4K",

        "category": "Cameras and Camcorders",

        "brand": "ActionCam",

        "model_number": "AC-4K",

        "warranty": "1 year",

        "rating": 4.4,

        "features": ["4K video", "Waterproof", "Image stabilization", "Wi-Fi"],

        "description": "Record your adventures with this rugged and compact 4K action camera.",

        "price": 299.99

    },

    "FotoSnap Mirrorless Camera": {

        "name": "FotoSnap Mirrorless Camera",

        "category": "Cameras and Camcorders",

        "brand": "FotoSnap",

        "model_number": "FS-ML100",

        "warranty": "1 year",

        "rating": 4.6,

        "features": ["20.1MP sensor", "4K video", "3-inch touchscreen", "Interchangeable lenses"],

        "description": "A compact and lightweight mirrorless camera with advanced features.",

        "price": 799.99

    },

    "ZoomMaster Camcorder": {

        "name": "ZoomMaster Camcorder",

        "category": "Cameras and Camcorders",

        "brand": "ZoomMaster",

        "model_number": "ZM-CM50",

        "warranty": "1 year",

        "rating": 4.3,

        "features": ["1080p video", "30x optical zoom", "3-inch LCD", "Image stabilization"],

        "description": "Capture life's moments with this easy-to-use camcorder.",

        "price": 249.99

    },

    "FotoSnap Instant Camera": {

        "name": "FotoSnap Instant Camera",

        "category": "Cameras and Camcorders",

        "brand": "FotoSnap",

        "model_number": "FS-IC10",

        "warranty": "1 year",

        "rating": 4.1,

        "features": ["Instant prints", "Built-in flash", "Selfie mirror", "Battery-powered"],

        "description": "Create instant memories with this fun and portable instant camera.",

        "price": 69.99

    }

}

然后调用方法根据名称或者产品类别获取具体产品的细节:

输出结果示例如下:

{'name': 'TechPro Ultrabook', 'category': 'Computers and Laptops', 'brand': 'TechPro', 'model_number': 'TP-UB100', 'warranty': '1 year', 'rating': 4.5, 'features': ['13.3-inch display', '8GB RAM', '256GB SSD', 'Intel Core i5 processor'], 'description': 'A sleek and lightweight ultrabook for everyday use.', 'price': 799.99}

;