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

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)