DiTy commited on
Commit
1f29a66
·
verified ·
1 Parent(s): 85b4e36

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +55 -118
README.md CHANGED
@@ -204,148 +204,85 @@ ChatCompletionMessage(
204
 
205
  ## Tool Planning Examples <a name="examples"></a>
206
 
 
207
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
208
 
 
 
 
209
 
210
- ## Bias, Risks, and Limitations
211
-
212
- <!-- This section is meant to convey both technical and sociotechnical limitations. -->
213
 
214
- [More Information Needed]
215
 
216
- ### Recommendations
217
 
218
- <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
219
 
220
- Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
221
 
222
- ## How to Get Started with the Model
223
 
224
- Use the code below to get started with the model.
225
 
226
- [More Information Needed]
227
 
228
- ## Training Details
229
 
230
- ### Training Data
231
 
232
- <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
233
 
234
- [More Information Needed]
235
 
236
- ### Training Procedure
237
 
238
- <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
239
 
240
- #### Preprocessing [optional]
241
 
242
  [More Information Needed]
243
 
244
 
245
- #### Training Hyperparameters
246
-
247
- - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
248
-
249
- #### Speeds, Sizes, Times [optional]
250
-
251
- <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
252
-
253
- [More Information Needed]
254
-
255
  ## Evaluation
256
 
257
- <!-- This section describes the evaluation protocols and provides the results. -->
258
-
259
- ### Testing Data, Factors & Metrics
260
-
261
- #### Testing Data
262
-
263
- <!-- This should link to a Dataset Card if possible. -->
264
-
265
- [More Information Needed]
266
-
267
- #### Factors
268
-
269
- <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
270
-
271
- [More Information Needed]
272
-
273
- #### Metrics
274
-
275
- <!-- These are the evaluation metrics being used, ideally with a description of why. -->
276
-
277
  [More Information Needed]
278
 
279
- ### Results
280
 
281
  [More Information Needed]
282
-
283
- #### Summary
284
-
285
-
286
-
287
- ## Model Examination [optional]
288
-
289
- <!-- Relevant interpretability work for the model goes here -->
290
-
291
- [More Information Needed]
292
-
293
- ## Environmental Impact
294
-
295
- <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
296
-
297
- Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
298
-
299
- - **Hardware Type:** [More Information Needed]
300
- - **Hours used:** [More Information Needed]
301
- - **Cloud Provider:** [More Information Needed]
302
- - **Compute Region:** [More Information Needed]
303
- - **Carbon Emitted:** [More Information Needed]
304
-
305
- ## Technical Specifications [optional]
306
-
307
- ### Model Architecture and Objective
308
-
309
- [More Information Needed]
310
-
311
- ### Compute Infrastructure
312
-
313
- [More Information Needed]
314
-
315
- #### Hardware
316
-
317
- [More Information Needed]
318
-
319
- #### Software
320
-
321
- [More Information Needed]
322
-
323
- ## Citation [optional]
324
-
325
- <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
326
-
327
- **BibTeX:**
328
-
329
- [More Information Needed]
330
-
331
- **APA:**
332
-
333
- [More Information Needed]
334
-
335
- ## Glossary [optional]
336
-
337
- <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
338
-
339
- [More Information Needed]
340
-
341
- ## More Information [optional]
342
-
343
- [More Information Needed]
344
-
345
- ## Model Card Authors [optional]
346
-
347
- [More Information Needed]
348
-
349
- ## Model Card Contact
350
-
351
- [More Information Needed]
 
204
 
205
  ## Tool Planning Examples <a name="examples"></a>
206
 
207
+ The model is using *grounded system prompt* for tool planning. <u>We do not recommend changing it too much, as this may cause hallucinations!</u>
208
 
209
+ ```
210
+ <|im_start|>system
211
+ You have been trained to have advanced reasoning and tool-use capabilities and you should make best use of these skills to serve user's requests.
212
+
213
+ # Tool Use
214
+ Think about how you can make best use of the provided tools to help with the task and come up with a high level plan that you will execute first.
215
+
216
+ 0. Start by writing <|start_thinking|> followed by a detailed step by step plan of how you will solve the problem. For each step explain your thinking fully and give details of required tool calls (if needed). Unless specified otherwise, you write your plan in natural language. When you finish, close it out with <|end_thinking|>.
217
+ You can optionally choose to skip this step when the user request is so straightforward to address that only a trivial plan would be needed.
218
+ NOTE: You MUST skip this step when you are directly responding to the user's request without using any tools.
219
+
220
+ Then carry out your plan by repeatedly executing the following steps.
221
+ 1. Action: write <tool_call> followed by a list of JSON-formatted tool calls, with each one containing "tool_name" and "parameters" fields.
222
+ When there are multiple tool calls which are completely independent of each other (i.e. they can be executed in parallel), you should list them out all together in one step. When you finish, close it out with </tool_call>.
223
+ 2. Observation: you will then receive results of those tool calls in JSON format in the very next turn, wrapped around by <tool_response> and </tool_response>. Carefully observe those results and think about what to do next. Note that these results will be provided to you in a separate turn. NEVER hallucinate results.
224
+ Every tool call produces a list of results (when a tool call produces no result or a single result, it'll still get wrapped inside a list). Each result is clearly linked to its originating tool call via its "tool_call_id".
225
+ 3. Reflection: start the next turn by writing <|start_thinking|> followed by what you've figured out so far, any changes you need to make to your plan, and what you will do next. When you finish, close it out with <|end_thinking|>.
226
+ You can optionally choose to skip this step when everything is going according to plan and no special pieces of information or reasoning chains need to be recorded.
227
+ NOTE: You MUST skip this step when you are done with tool-use actions and are ready to respond to the user.
228
+
229
+ You can repeat the above 3 steps multiple times (could be 0 times too if no suitable tool calls are available or needed), until you decide it's time to finally respond to the user.
230
+
231
+ 4. Response: then break out of the loop and write <|start_response|> followed by a piece of text which serves as a response to the user's last request. Use all previous tool calls and results to help you when formulating your response. When you finish, close it out with <|end_response|>.
232
+
233
+ # Available Tools
234
+ Here is the list of tools that you have available to you.
235
+ You can ONLY use the tools listed here. When a tool is not listed below, it is NOT available and you should NEVER attempt to use it.
236
+ Each tool is represented as a JSON object with fields like "name", "description", "parameters" (per JSON Schema), and optionally, "responses" (per JSON Schema).
237
+
238
+ \`\`\`json
239
+ [
240
+ {"name": "get_weather", "description": "A function that returns the weather in a given city.", "parameters": {"type": "object", "properties": {"city": {"type": "string", "description": "The city to get the weather for."}}, "required": ["city"]}, "responses": null},
241
+ {"name": "get_sunrise_sunset_times", "description": "A function that returns the time of sunrise and sunset at the present moment, for a given city, in the form of a list: [sunrise_time, sunset_time].", "parameters": {"type": "object", "properties": {"city": {"type": "string", "description": "The city to get the sunrise and sunset times for."}}, "required": ["city"]}, "responses": null}
242
+ ]
243
+ \`\`\`
244
 
245
+ <|im_end|>
246
+ ```
247
+ *For corrected display used [\ \`] as [\`]*
248
 
249
+ ### Simple Function
 
 
250
 
251
+ ```python
252
 
253
+ ```
254
 
255
+ ### Multiple Function
256
 
257
+ ```python
258
 
259
+ ```
260
 
261
+ ### Parallel Multiple Function
262
 
263
+ ```python
264
 
265
+ ```
266
 
267
+ ### Tool Error Handling
268
 
269
+ ```python
270
 
271
+ ```
272
 
 
273
 
274
+ ## Limitations
275
 
276
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
277
 
278
  [More Information Needed]
279
 
280
 
 
 
 
 
 
 
 
 
 
 
281
  ## Evaluation
282
 
283
+ *BFCL benchmark*
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
284
  [More Information Needed]
285
 
286
+ ## Authors
287
 
288
  [More Information Needed]