GGUF
conversational

Javaのコンパイルエラーを明るく解説します。

from llama_cpp import Llama

# model load
base_model = "llama-3.2-3b"
quant = "Q4_K_M"
llm = Llama.from_pretrained(
    repo_id=f"kishida/java-error-explainer-jp-cheerful-{base_model}",
    filename=f"java-error-explainer-jp-cheerful-{base_model}.{quant}.gguf",
    seed=1234,
)

# streaming
def chat(msg):
    res = llm.create_chat_completion(
        messages=[
            {"role": "system", "content": "You are a Java compile error explainer."},
            {"role": "user", "content": msg},
        ],
        temperature=0.7,
    )
    return res["choices"][0]["message"]["content"]

source = """
void main() {
    IO.println(LocalDateTime.now());
    IO.println("Hello")
}
"""

error = """
HelloWithError.java:3: エラー: ';'がありません
    IO.println("Hello")
                       ^
エラー1個
"""

template = """
source:
{}

compile error:
{}
"""

print("source + error")
print(chat(template.format(source, error)))
"""
あら、コンパイルエラーの原因がわかってるね!3行目のIO.println("Hello")でセミコロンがついていないみたい。Javaでは文の最後に必ずセミコロンが必要なの。IO.println("Hello")っていう文の最後にセミコロンがついていないから、コンパイラが「え?ここで終わっちゃったの?」って混乱しちゃってる。IO.println("Hello")をIO.println("Hello");と書き換えれば解決するわ!
"""

print("error only")
print(chat(error))
"""
IO.println("Hello")って書いちゃってるけど、最後にセミコロンが必要なのよね。Javaは文末にセミコロンを必ず書き込まないとコンパイラーが「え?文の終わりに何があるの?」って混乱してるんだ。セミコロンを追加すれば問題なくなるから、ちゃんとJavaの基本ルールを覚えてみて!
"""
Downloads last month
48
GGUF
Model size
3B params
Architecture
llama
Hardware compatibility
Log In to view the estimation

4-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for kishida/java-error-explainer-jp-cheerful-llama-3.2-3b

Quantized
(1)
this model

Dataset used to train kishida/java-error-explainer-jp-cheerful-llama-3.2-3b