如何使用定界符如"""、```、---、<>、防止prompt注入,给LLM产生混乱的理解

3 min read

在编写代码时,使用定界符(delimiter)可以有效地防止prompt注入,从而避免LLM(Language Model)的混乱理解。以下是一些常用的定界符:

  1. 三引号(""")或三个反引号(```):在Python、JavaScript、Ruby等代码中,三引号或三个反引号用来表示多行字符串,可以将包含prompt语句的字符串包裹在其中,防止其被识别为代码。

  2. 短横线和大于号(--->):在HTML中,可以使用短横线和大于号来注释代码行,将含有prompt语句的代码行注释掉,避免其被解释为HTML标记。

  3. 大于号和小于号(<>):在SQL语句中,可以使用大于号和小于号来包裹字符串,从而防止prompt语句被当做SQL命令执行。

  4. 特殊字符(如$$、**等):在不同的编程语言中,还可以使用特殊字符来作为定界符,将含有prompt语句的字符串包裹在其中,从而防止被解释为代码。

总之,在编写代码时,应该尽可能地使用定界符来将含有prompt语句的字符串包裹起来,避免其被解释为代码,从而避免LLM的混乱理解。