Edit model card

Model Card for Model ID

ActionGemma is a LargeActionModel inspired from Salesforce/xLAM and trained on it's dataset. this is a combination of multi-lingual capabilities of Gemma with Function calling capabilites from xLAM dataset Now you have a Action /function calling Model for all the languages supported by gemma2

Model Details

Base Model : Gemma2-9B-it Fine-Tuned on : xLAM dataset

Model Description

This is the model card of a 🤗 transformers model that has been pushed on the Hub. This model card has been automatically generated.

  • Developed by: KishoreK
  • 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]: Gemma2-9B-it

Model Sources [optional]

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

Uses

Direct Use

tokenizer in built have a chat template as follows

tokenizer = AutoTokenizer.from_pretrained("KishoreK/ActionGemma-9B")
tokenizer.chat_template = """{{ bos_token }}
{% for message in messages %}
    {% if message['role'] == 'tools' %}
        {{ '<unused0>\n' + message['content'] + '<unused1>\n'}}
    {% else %}
      {{ '<start_of_turn>' + message['role'] + '\n' + message['content'] | trim + '<end_of_turn>\n' }}
  {% endif %}
{% endfor %}

{% if add_generation_prompt %}
  {{ '<start_of_turn>assistant\n' }}
{% endif %}
"""

you can utilise this or modify based on this syntax.

task_instruction = """
You are an expert in composing functions. You are given a question and a set of possible functions. 
Based on the question, you will need to make one or more function/tool calls to achieve the purpose. 
If none of the functions can be used, point it out and refuse to answer. 
If the given question lacks the parameters required by the function, also point it out.
""".strip()

get_weather_api = {
    "name": "get_weather",
    "description": "Get the current weather for a location",
    "parameters": {
        "type": "object",
        "properties": {
            "location": {
                "type": "string",
                "description": "The city and state, e.g. San Francisco, New York"
            },
            "unit": {
                "type": "string",
                "enum": ["celsius", "fahrenheit"],
                "description": "The unit of temperature to return"
            }
        },
        "required": ["location"]
    }
}

search_api = {
    "name": "search",
    "description": "Search for information on the internet",
    "parameters": {
        "type": "object",
        "properties": {
            "query": {
                "type": "string",
                "description": "The search query, e.g. 'latest news on AI'"
            }
        },
        "required": ["query"]
    }
}

openai_format_tools = [get_weather_api, search_api]

def convert_to_xlam_tool(tools):
    ''''''
    if isinstance(tools, dict):
        return {
            "name": tools["name"],
            "description": tools["description"],
            "parameters": {k: v for k, v in tools["parameters"].get("properties", {}).items()}
        }
    elif isinstance(tools, list):
        return [convert_to_xlam_tool(tool) for tool in tools]
    else:
        return tools

user_query = "अमेरिका के राष्ट्रपति कौन है?"
tools = openai_format_tools
messages = [{
    "role" : "system",
    "content" : task_instruction
},{
    "role" : "user",
    "content" : user_query
},{
    "role": "tools",
    "content": json.dumps(convert_to_xlam_tool(tools))
}]

print(tokenizer.decode(tokenizer.apply_chat_template(messages, add_generation_prompt=True)))

sample response from applied chat template

<bos>
      <start_of_turn>system
You are an expert in composing functions. You are given a question and a set of possible functions. 
Based on the question, you will need to make one or more function/tool calls to achieve the purpose. 
If none of the functions can be used, point it out and refuse to answer. 
If the given question lacks the parameters required by the function, also point it out.<end_of_turn>

      <start_of_turn>user
अमेरिका के राष्ट्रपति कौन है?<end_of_turn>

        <unused0>
[{"name": "get_weather", "description": "Get the current weather for a location", "parameters": {"location": {"type": "string", "description": "The city and state, e.g. San Francisco, New York"}, "unit": {"type": "string", "enum": ["celsius", "fahrenheit"], "description": "The unit of temperature to return"}}}, {"name": "search", "description": "Search for information on the internet", "parameters": {"query": {"type": "string", "description": "The search query, e.g. 'latest news on AI'"}}}]<unused1>


  <start_of_turn>assistant

invoking model with this prompt

model = AutoModelForCausalLM.from_pretrained("KishoreK/ActionGemma-9B", use_cache=True)
outputs = model.generate(inputs, max_new_tokens=512, do_sample=False, num_return_sequences=1, eos_token_id=tokenizer.eos_token_id)
print(tokenizer.decode(outputs[0][len(inputs[0]):], skip_special_tokens=True))

output for the question

[{"name": "search", "arguments": {"query": "US President"}}]

chat template, inference are referenced from xLAM documentation. [More Information Needed]

Downstream Use [optional]

[More Information Needed]

Out-of-Scope Use

[More Information Needed]

Bias, Risks, and Limitations

[More Information Needed]

Recommendations

Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.

How to Get Started with the Model

Use the code below to get started with the model.

[More Information Needed]

Training Details

Training Data

[More Information Needed]

Training Procedure

Preprocessing [optional]

[More Information Needed]

Training Hyperparameters

  • Training regime: [More Information Needed]

Speeds, Sizes, Times [optional]

[More Information Needed]

Evaluation

Testing Data, Factors & Metrics

Testing Data

[More Information Needed]

Factors

[More Information Needed]

Metrics

[More Information Needed]

Results

[More Information Needed]

Summary

Model Examination [optional]

[More Information Needed]

Environmental Impact

Carbon emissions can be estimated using the Machine Learning Impact calculator presented in Lacoste et al. (2019).

  • Hardware Type: [More Information Needed]
  • Hours used: [More Information Needed]
  • Cloud Provider: [More Information Needed]
  • Compute Region: [More Information Needed]
  • Carbon Emitted: [More Information Needed]

Technical Specifications [optional]

Model Architecture and Objective

[More Information Needed]

Compute Infrastructure

[More Information Needed]

Hardware

[More Information Needed]

Software

[More Information Needed]

Citation [optional]

BibTeX:

[More Information Needed]

APA:

[More Information Needed]

Glossary [optional]

[More Information Needed]

More Information [optional]

[More Information Needed]

Model Card Authors [optional]

[More Information Needed]

Model Card Contact

email : [email protected]

Downloads last month
23
Safetensors
Model size
9.24B params
Tensor type
F32
·
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Model tree for KishoreK/ActionGemma-9B

Finetunes
1 model
Merges
2 models
Quantizations
1 model

Dataset used to train KishoreK/ActionGemma-9B

Space using KishoreK/ActionGemma-9B 1