Я использую простой пакет gpt-2: https://github.com/minimaxir/gpt-2-simple
Я хотел бы получить вероятность для всех возможных следующих токенов в качестве вывода. что-то вроде:
[['A', 0,25], ['B', 0,25], ['C', 0,25], ['D', 0,25]]
Я изменил код gpt_2_simple python, который выглядит примерно так:
full_output = sample.sample_sequence(
hparams=hparams,
length=min(length, 1023 - (len(context_tokens) if prefix else 0)),
start_token=enc.encoder['<|endoftext|>'] if not prefix else None,
context=context if prefix else None,
batch_size=batch_size,
temperature=temperature, top_k=top_k, top_p=top_p
)
logit_output = full_output[:,0:]
out = sess.run(output, feed_dict={context: batch_size * [context_tokens]})
logit_out = sess.run(logit_output, feed_dict={context: batch_size * [context_tokens]})
Я надеялся связать выходные токены с их значениями lo git, разделенными по температуре, а затем декодировать их, чтобы получить вероятности для каждый токен, как в примере выше.
Может кто-нибудь помочь мне переформатировать этот код, чтобы я мог получить доступ к выходным токенам / lo git комбинациям вероятности?