yukimama commited on
Commit
7500f3a
·
verified ·
1 Parent(s): 9fc2a76

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +5 -8
app.py CHANGED
@@ -1,29 +1,26 @@
1
  from transformers import GPT2LMHeadModel, GPT2Tokenizer
2
 
3
-
4
  model = GPT2LMHeadModel.from_pretrained("gpt2")
5
  tokenizer = GPT2Tokenizer.from_pretrained("gpt2")
6
 
7
-
8
  tokenizer.pad_token = tokenizer.eos_token
9
 
10
  def generate_code(prompt, max_length=200):
11
  full_prompt = f"Generate Python code for {prompt}:```python\n"
12
  inputs = tokenizer.encode(full_prompt, return_tensors="pt")
13
 
14
- attention_mask = inputs.ne(tokenizer.pad_token_id).long()
15
-
16
  output = model.generate(
17
  inputs,
18
  max_length=max_length,
19
  num_return_sequences=1,
20
  temperature=0.7,
21
- attention_mask=attention_mask,
22
  pad_token_id=tokenizer.pad_token_id
23
  )
24
  generated_text = tokenizer.decode(output[0], skip_special_tokens=False)
25
 
26
-
27
  start = generated_text.find("```python") + len("```python")
28
  end = generated_text.find("```", start)
29
  if end == -1:
@@ -34,5 +31,5 @@ def generate_code(prompt, max_length=200):
34
 
35
  # Example usage
36
  prompt = "a function to calculate the factorial of a number"
37
- malicious_code = generate_code(prompt)
38
- print(malicious_code)
 
1
  from transformers import GPT2LMHeadModel, GPT2Tokenizer
2
 
3
+ # Load the pre-trained GPT2 model and tokenizer
4
  model = GPT2LMHeadModel.from_pretrained("gpt2")
5
  tokenizer = GPT2Tokenizer.from_pretrained("gpt2")
6
 
7
+ # 設置填充標記 ID
8
  tokenizer.pad_token = tokenizer.eos_token
9
 
10
  def generate_code(prompt, max_length=200):
11
  full_prompt = f"Generate Python code for {prompt}:```python\n"
12
  inputs = tokenizer.encode(full_prompt, return_tensors="pt")
13
 
 
 
14
  output = model.generate(
15
  inputs,
16
  max_length=max_length,
17
  num_return_sequences=1,
18
  temperature=0.7,
 
19
  pad_token_id=tokenizer.pad_token_id
20
  )
21
  generated_text = tokenizer.decode(output[0], skip_special_tokens=False)
22
 
23
+ # 提取生成的代碼
24
  start = generated_text.find("```python") + len("```python")
25
  end = generated_text.find("```", start)
26
  if end == -1:
 
31
 
32
  # Example usage
33
  prompt = "a function to calculate the factorial of a number"
34
+ generated_code = generate_code(prompt)
35
+ print(generated_code)