

```python
#### peft version: '0.2.0.dev0'
from peft import PeftModel, PeftConfig
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
import pandas as pd
import torch

peft_model_id = "svjack/mt0-large-comet-atomic-zh-peft-early"
config = PeftConfig.from_pretrained(peft_model_id)
tokenizer = AutoTokenizer.from_pretrained(config.base_model_name_or_path)
model = AutoModelForSeq2SeqLM.from_pretrained(config.base_model_name_or_path)
#### model.device "cuda"
device = "cuda:0"
model = PeftModel.from_pretrained(model, peft_model_id)
model.eval()
print("have load")

NEED_PREFIX = '以下事件有哪些必要的先决条件：'
EFFECT_PREFIX = '下面的事件发生后可能会发生什么：'
INTENT_PREFIX = '以下事件的动机是什么：'
REACT_PREFIX = '以下事件发生后，你有什么感觉：'

event = "X吃了一顿美餐。"
for prefix in [NEED_PREFIX, EFFECT_PREFIX, INTENT_PREFIX, REACT_PREFIX]:
    prompt = "{}{}".format(prefix, event)
    encode = tokenizer(prompt, return_tensors='pt').to(device)
    answer = model.generate(input_ids = encode.input_ids,
                           max_length = 128,
        num_beams=2,
        top_p = 0.95,
        top_k = 50,
        repetition_penalty = 2.5,
        length_penalty=1.0,
        early_stopping=True,
                           )[0]
    decoded = tokenizer.decode(answer, skip_special_tokens=True)
    print(prompt, "\n---答案：", decoded, "----\n")

```

</br>

```json
以下事件有哪些必要的先决条件：X吃了一顿美餐。 
---答案： X去超市购物 ----

下面的事件发生后可能会发生什么：X吃了一顿美餐。 
---答案： X变胖 ----

以下事件的动机是什么：X吃了一顿美餐。 
---答案： X想吃好吃的东西 ----

以下事件发生后，你有什么感觉：X吃了一顿美餐。 
---答案： 我可以放松一下 ----
```
{"language": ["zh"], "pipeline_tag": "text2text-generation"}
text2text-generation zh region:us
TAGS
#text2text-generation #zh #region-us 





</br>


TAGS
#text2text-generation #zh #region-us 

TAGS
#text2text-generation #zh #region-us 
