如何解决VertexAI code-bison返回带Markdown的Python代码问题?
解决VertexAI code-bison返回带Markdown格式Python代码的问题
问题说明
使用VertexAI code-bison时,即便明确要求返回纯Python代码,它仍会用Markdown代码块(python )包裹代码;而OpenAI GPT3.5无此问题,需让code-bison输出无格式包裹的纯代码。
解决方法
- 强化格式约束的明确性:在提示词核心位置添加强硬且清晰的格式要求,例如:「绝对不要用Markdown代码块或任何标记包裹代码,只返回纯Python代码,无任何额外符号、说明」。
- 前置格式规则:将输出格式要求放在提示词最开头,确保模型优先识别并遵守格式约束,避免被后续任务描述覆盖。
- 优化提示词结构:移除提示词中可能误导模型的分隔符(如原示例中的###),用自然语言清晰区分任务规则与代码片段。
修改后的示例提示词(中文)
绝对不要用Markdown代码块或任何标记包裹代码,只返回纯Python代码,无额外内容。 我会提供一个数据验证用的Python函数,请帮我修改它。答案保持简短,无需解释修改逻辑。 函数接收row作为输入,row是包含'size'、'product_type'键的字典;函数在row有效时返回True,无效时返回False。 请全局定义有效值,不要将值放在函数内部。将全局变量纳入函数参数定义,不得重命名现有变量。 有效规则:当product_type为shoes时,size必须是8、9、10、10.5、11、11.5、12中的一个。 原Python函数: valid_values1 = [] def check(row, valid_values1): return row['size'] in valid_values1
预期纯Python返回结果
valid_values1 = [8, 9, 10, 10.5, 11, 11.5, 12] def check(row, valid_values1): return row['size'] in valid_values1 and row['product_type'] == 'shoes'
内容的提问来源于stack exchange,提问作者Seperman
相关产品推荐
相关产品推荐

