public String rewriteSQL()

in bigquery-antipattern-recognition/src/main/java/com/google/zetasql/toolkit/antipattern/rewriter/gemini/QueryVisitorRewriter.java [51:67]


    public String rewriteSQL(String inputQuery,
                             AntiPatternVisitor visitorThatFoundAntiPattern,
                             Integer llmRetries) throws Exception {
        String prompt = this.promptYamlReader.getAntiPatternNameToPrompt().get(visitorThatFoundAntiPattern.getName());

        if (prompt == null) {
            return  inputQuery; // No changes so it can use the same query
        }

        prompt = String.format(prompt, inputQuery).replace("%%","%");
        String queryStr = GeminiRewriter.processPrompt(prompt, this.antiPatternHelper.getProject());
        if(this.llmStrictValidation && llmRetries>0) {
            queryStr = checkAntiPattern(queryStr, visitorThatFoundAntiPattern, llmRetries);
        }

        return queryStr;
    }