Literais de modelos: por que o recuo é importante (especialmente para solicitações de IA)
Ouvi esse argumento algumas vezes recentemente, especialmente em código relacionado à engenharia imediata, e às vezes as coisas mais triviais podem provocar uma conversa entre os desenvolvedores. Você pode ver algum código como este: const myfunc = async () => {try {if (condition) {const prompt = `hello world Este é algum texto multilina mais texto`; }} Catch {// Algumas coisas aqui}} Digite o modo de tela de tela cheia de saída de tela cheia Muitos desenvolvedores acham que essa é a maneira certa de escrever uma string multilina, pois tudo é recuado de acordo com o restante do código. Mas há dois grandes problemas com essa abordagem. Este é um modelo literal enquanto, à primeira vista, o recuo pode parecer fazer sentido, ao usar um modelo literal (a corda envolvida com backticks), você não precisa seguir o restante do indentação do código. Isso ocorre porque, quando essa variável é renderizada, será assim: Hello World Este é algum texto multilina mais texto Digite o modo de saída de tela cheia, como você pode ver, isso não parece correto – os espaços ou guias extras são levados em consideração e se tornam parte do conteúdo real da string. Em vez disso, de acordo com as especificações do idioma, você deve escrever o mesmo código como este: const myfunc = async () => {try {if (condition) {const prompt = `hello world Este é algum texto multilina mais texto`; }} Catch {// Algumas coisas aqui}} Digite o modo de tela fullcreen Sair do modo de tela cheia Os espaços vazios contam como tokens outro problema com o código original, especialmente ao lidar com solicitações de IA, é que os espaços ou guias extras contam como os tokens, o que se traduz em custos mais altos. Pode parecer uma coisa pequena, mas ao lidar com grandes quantidades de texto, ele pode começar a fazer uma diferença real nos custos de uso da IA. Você pode testá -lo usando a ferramenta Tokenizer do OpenAI. O mesmo texto que usamos acima, sem os espaços extras, gera 11 tokens, enquanto o com os espaços extras gera 14 tokens. Com espaços extras sem espaços extras na linha inferior ao trabalhar com literais de modelo, especialmente para engenharia rápida, lembre -se sempre de que o que você vê no seu editor de código é exatamente o que é enviado ao modelo de IA. Esses espaços e guias extras não são apenas desordem visual – são conteúdo real que afeta a qualidade de seus avisos e seus custos. Mantenha o seu modelo literais limpos e adequadamente formatados, e seu futuro eu (e seu orçamento) agradecerá! Isenção de responsabilidade: a IA foi usada para reformatar este artigo e correto erros
Fonte
Publicar comentário