Rocketknight1 HF staff commited on
Commit
e86322f
1 Parent(s): 188b436

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +44 -0
README.md CHANGED
@@ -150,6 +150,50 @@ The stock fundamentals data for Tesla (TSLA) are as follows:
150
  This information provides a snapshot of Tesla's financial position and performance based on the fundamental data obtained from the yfinance API. It shows that Tesla has a substantial market capitalization and a relatively high P/E and P/B ratio compared to other stocks in its industry. The company does not pay a dividend at the moment, which is reflected by a 'Dividend Yield' of 'None'. The Beta value indicates that Tesla's stock has a moderate level of volatility relative to the market. The 52-week high and low prices give an idea of the stock's range over the past year. This data can be useful when assessing investment opportunities and making investment decisions.<|im_end|>
151
  ```
152
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
153
  ## Prompt Format for JSON Mode / Structured Outputs
154
 
155
  Our model was also trained on a specific system prompt for Structured Outputs, which should respond with **only** a json object response, in a specific json schema.
 
150
  This information provides a snapshot of Tesla's financial position and performance based on the fundamental data obtained from the yfinance API. It shows that Tesla has a substantial market capitalization and a relatively high P/E and P/B ratio compared to other stocks in its industry. The company does not pay a dividend at the moment, which is reflected by a 'Dividend Yield' of 'None'. The Beta value indicates that Tesla's stock has a moderate level of volatility relative to the market. The 52-week high and low prices give an idea of the stock's range over the past year. This data can be useful when assessing investment opportunities and making investment decisions.<|im_end|>
151
  ```
152
 
153
+ ## Chat Templates for function calling
154
+
155
+ You can also use chat templates for function calling. For more information, please see the relevant section of the [chat template documentation](https://huggingface.co/docs/transformers/en/chat_templating#advanced-tool-use--function-calling).
156
+
157
+ Here is a brief example of this approach:
158
+
159
+ ```python
160
+ def multiply(a: int, b: int):
161
+ """
162
+ A function that multiplies two numbers
163
+
164
+ Args:
165
+ a: The first number to multiply
166
+ b: The second number to multiply
167
+ """
168
+ return int(a) * int(b)
169
+
170
+ tools = [multiply] # Only one tool in this example, but you probably want multiple!
171
+
172
+ model_input = tokenizer.apply_chat_template(
173
+ messages,
174
+ tools=tools
175
+ )
176
+ ```
177
+
178
+ The docstrings and type hints of the functions will be used to generate a function schema that will be read by the chat template and passed to the model.
179
+ Please make sure you include a docstring in the same format as this example!
180
+
181
+ If the model makes a tool call, you can append the tool call to the conversation like so:
182
+
183
+ ```python
184
+ tool_call = {"name": "multiply", "arguments": {"a": "6", "b": "7"}}
185
+ messages.append({"role": "assistant", "tool_calls": [{type": "function", "function": tool_call}]})
186
+ ```
187
+
188
+ Next, call the tool function and append the tool result:
189
+
190
+ ```python
191
+ messages.append({"role": "tool", "name": "multiply", "content": "42"})
192
+ ```
193
+
194
+ And finally apply the chat template to the updated `messages` list and `generate()` text once again to continue the conversation.
195
+
196
+
197
  ## Prompt Format for JSON Mode / Structured Outputs
198
 
199
  Our model was also trained on a specific system prompt for Structured Outputs, which should respond with **only** a json object response, in a specific json schema.