Open1

Llamacppでmax_tokenの値を指定するとき

HashoryHashory

LlamacppのPythonバインディング.

max_tokenをどこで指定するのか迷った.また,max_tokenの初期値が16なので,ほとんど全く生成されないので困った.

結論としては,生成時に指定すればよかった(初期化時ではない).

from llama_cpp import Llama

# Llamaモデルの初期化
llm = Llama(
    model_path=model_path,
    n_gpu_layers=-1,  # GPUレイヤーの設定(-1で全レイヤーをGPUに割り当て)
    n_batch=512,      # バッチサイズの設定
    seed=112233,  # シード値の設定
    n_ctx=4096,       # コンテキスト長の設定
    verbose=True      # 詳細ログの表示
)

# responseを生成する
response = llm("元気いっぱいですか?", max_tokens=8192) # ここで`max_token`を指定する!

# 回答を表示
answer = response["choices"][0]["text"]
print(answer)