Vishal24's picture
Update README.md
664b9c1 verified
|
raw
history blame
5.14 kB
metadata
library_name: peft
base_model: meta-llama/Llama-2-7b-chat-hf

Model Card for Model ID

Model Details

Model Description

  • Developed by: [More Information Needed]
  • Funded by [optional]: [More Information Needed]
  • Shared by [optional]: [More Information Needed]
  • Model type: [More Information Needed]
  • Language(s) (NLP): [More Information Needed]
  • License: [More Information Needed]
  • Finetuned from model [optional]: [More Information Needed]

Model Sources [optional]

  • Repository: [More Information Needed]
  • Paper [optional]: [More Information Needed]
  • Demo [optional]: [More Information Needed]

Infrence Function

for keyword brand

    def generate_brand(keyword):
        # Define the roles and markers
        B_INST, E_INST = "[INST]", "[/INST]"
        B_KW, E_KW = "[KW]", "[/KW]"
        # Format your prompt template
        prompt = f"""{B_INST} Extract the brand from keyword related to brand loyalty intent.{E_INST}\n
        {B_KW} {keyword} {E_KW}
        """
        # print("Prompt:")
        # print(prompt)
        encoding = tokenizer(prompt, return_tensors="pt").to("cuda:0")
        output =model.generate(input_ids=encoding.input_ids,
                                attention_mask=encoding.attention_mask,
                                max_new_tokens=20,
                                do_sample=True,
                                temperature=0.01,
                                eos_token_id=tokenizer.eos_token_id,
                                top_k=0)
        #print()
        # Subtract the length of input_ids from output to get only the model's response
        output_text = tokenizer.decode(output[0, len(encoding.input_ids[0]):], skip_special_tokens=False)
        output_text = re.sub('\n+', '\n', output_text)  # remove excessive newline characters
        #print("Generated Assistant Response:")
        return output_text

for keyword category

    def generate_cat(list_cat,keyword):
      # Define the roles and markers
      B_INST, E_INST = "[INST]", "[/INST]"
      B_KW, E_KW = "[KW]", "[/KW]"
      # Format your prompt template
      prompt = f"""{B_INST} Analyze the following keyword searched on amazon with intent of shopping. Identify the product category from the list {list_cat} {E_INST}\n
      {B_KW} {keyword} {E_KW}
      """
      # print("Prompt:")
      # print(prompt)
      encoding = tokenizer(prompt, return_tensors="pt").to("cuda:0")
      output =model.generate(input_ids=encoding.input_ids,
                              attention_mask=encoding.attention_mask,
                              max_new_tokens=20,
                              do_sample=True,
                              temperature=0.01,
                              eos_token_id=tokenizer.eos_token_id,
                              top_k=0)
      #print()
      # Subtract the length of input_ids from output to get only the model's response
      output_text = tokenizer.decode(output[0, len(encoding.input_ids[0]):], skip_special_tokens=False)
      output_text = re.sub('\n+', '\n', output_text)  # remove excessive newline characters
      #print("Generated Assistant Response:")
      return output_text

for keyword category and brand

    def generate_cat(list_cat,keyword):
      # Define the roles and markers
      B_INST, E_INST = "[INST]", "[/INST]"
      B_KW, E_KW = "[KW]", "[/KW]"
      # Format your prompt template
      prompt = f"""{B_INST} Analyze the following keyword searched on amazon with intent of shopping. Identify the product category from the list {list_cat}.
      Extract the brand from keyword related to brand loyalty intent. Output in JSON with keyword, product category, brand as keys.{E_INST}\n
      {B_KW} {keyword} {E_KW}
      """
      # print("Prompt:")
      # print(prompt)
      encoding = tokenizer(prompt, return_tensors="pt").to("cuda:0")
      output =model.generate(input_ids=encoding.input_ids,
                              attention_mask=encoding.attention_mask,
                              max_new_tokens=20,
                              do_sample=True,
                              temperature=0.01,
                              eos_token_id=tokenizer.eos_token_id,
                              top_k=0)
      #print()
      # Subtract the length of input_ids from output to get only the model's response
      output_text = tokenizer.decode(output[0, len(encoding.input_ids[0]):], skip_special_tokens=False)
      output_text = re.sub('\n+', '\n', output_text)  # remove excessive newline characters
      #print("Generated Assistant Response:")
      return output_text