Nexus Raven is a 13B instruction tuned model for function calling tasks.

8,853 Pulls Updated 3 months ago

3 months ago

483a8282af74 · 7.4GB

model
llama
·
13B
·
4-bit
license
Nexusflow.ai License Terms NexusRaven-V2 Version Release Date: December 5, 2023 “Agreement” means the terms and conditions for use, reproduction, distribution and modification of the Nexusflow Materials set forth herein. “Documentation” means the specifications, manuals and documentation accompanying NeuxsRaven-V2 distributed by Nexusflow at https://huggingface.co/Nexusflow/NexusRaven-V2-13B, if any. “Licensee” or “you” means you, or your employer or any other person or entity (if you are entering into this Agreement on such person or entity’s behalf), of the age required under applicable laws, rules or regulations to provide legal consent and that has legal authority to bind your employer or such other person or entity if you are entering in this Agreement on their behalf. “NexusRaven-V2” means the large language models and software and algorithms, including machine-learning model code, trained model weights, inference-enabling code, training-enabling code, fine-tuning enabling code and other elements of the foregoing made available by Nexusflow at https://huggingface.co/Nexusflow/NexusRaven-V2-13B. “Nexusflow Materials” means, collectively, Nexusflow’s proprietary NexusRaven-V2 and Documentation (and any portion thereof) made available under this Agreement. “Nexusflow” or “we” means Nexusflow.ai Inc. By using or distributing any portion or element of the Nexusflow Materials, you agree to be bound by this Agreement. 1. License Rights and Redistribution. a. Grant of Rights. You are granted a non-exclusive, worldwide, non-transferable and royalty-free limited license under Nexusflow’s intellectual property or other rights owned by Nexusflow embodied in the Nexusflow Materials to use, reproduce, distribute, copy, create derivative works of, and make modifications to the Nexusflow Materials. b. Redistribution and Use. i. If you distribute or make the Nexusflow Materials, or any derivative works thereof, available to a third party, you shall provide a copy of this Agreement to such third party. ii. If you receive Nexusflow Materials, or any derivative works thereof, from a Licensee as part of an integrated end user product, then Section 1 of this Agreement will not apply to you. iii. You must retain in all copies of the Nexusflow Materials that you distribute the following attribution notice within a “Notice” text file distributed as a part of such copies: “NexusRaven-V2 is licensed under the Nexusflow License, Copyright © Nexusflow.ai Inc. All Rights Reserved.” iv. Your use of the Nexusflow Materials must comply with applicable laws and regulations (including trade compliance laws and regulations) and adhere to Nexusflow terms and policies (if any), which are hereby incorporated by reference into this Agreement. The Nexusflow Materials are derived from Llama 2 as offered by Meta Platforms Ireland Limited or Meta Platforms, Inc., and you further agree that your use of the Nexusflow Materials shall be subject to the applicable terms and conditions of the Llama 2 Community License Agreement, available at https://ai.meta.com/llama/license/. v. You will not use the Nexusflow Materials or any output or results of the Nexusflow Materials to improve any other large language model (excluding NexusRaven-V2 or derivative works thereof). 2. Additional Commercial Terms. If, on the NexusRaven-V2 version release date, the monthly active users of the products or services made available by or for Licensee, or Licensee’s affiliates, is greater than 50 million monthly active users in the preceding calendar month, you must request a license from Nexusflow, which Nexusflow may grant to you in its sole discretion, and you are not authorized to exercise any of the rights under this Agreement unless or until Nexusflow otherwise expressly grants you such rights. 3. Disclaimer of Warranty. UNLESS REQUIRED BY APPLICABLE LAW, THE NEXUSFLOW MATERIALS AND ANY OUTPUT AND RESULTS THEREFROM ARE PROVIDED ON AN “AS IS” BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. YOU ARE SOLELY RESPONSIBLE FOR DETERMINING THE APPROPRIATENESS OF USING OR REDISTRIBUTING THE NEXUSFLOW MATERIALS AND ASSUME ANY RISKS ASSOCIATED WITH YOUR USE OF THE NEXUSFLOW MATERIALS AND ANY OUTPUT AND RESULTS. 4. Limitation of Liability. IN NO EVENT WILL NEXUSFLOW, ITS LICENSORS OR AFFILIATES BE LIABLE UNDER ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, TORT, NEGLIGENCE, PRODUCTS LIABILITY, OR OTHERWISE, ARISING OUT OF THIS AGREEMENT, FOR ANY LOST PROFITS OR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL, EXEMPLARY OR PUNITIVE DAMAGES, EVEN IF NEXUSFLOW OR ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF ANY OF THE FOREGOING. 5. Intellectual Property. a. No trademark licenses are granted under this Agreement, and in connection with the Nexusflow Materials, neither Nexusflow nor Licensee may use any name or mark owned by or associated with the other or any of its affiliates, except as required for reasonable and customary use in describing and using the Nexusflow Materials. b. Subject to Nexusflow’s ownership of Nexusflow Materials and derivatives made by or for Nexusflow (and any rights retained therein by its licensors to the foregoing), with respect to any derivative works and modifications of the Nexusflow Materials that are made by you, as between you and Nexusflow, you are and will be the owner of such derivative works and modifications. c. You will indemnify and hold harmless Nexusflow from and against any claim by any third party arising out of or related to your use of the Nexusflow Materials. 6. Term and Termination. The term of this Agreement will commence upon your acceptance of this Agreement or access to the Nexusflow Materials and will continue in full force and effect until terminated in accordance with the terms and conditions herein. Nexusflow may terminate this Agreement if you are in breach of any term or condition of this Agreement. Upon termination of this Agreement, you shall delete and cease use of the Nexusflow Materials. Sections 3, 4, 5.c. (the last sentence) and 7 shall survive the termination of this Agreement. 7. Governing Law and Jurisdiction. This Agreement will be governed and construed under the laws of the State of California without regard to choice of law principles, and the UN Convention on Contracts for the International Sale of Goods does not apply to this Agreement. The courts of California shall have exclusive jurisdiction of any dispute arising out of this Agreement.
template
{{ .System }} User Query: {{ .Prompt }}<human_end>

Readme

Nexus Raven is a 13 billion parameter model designed for function calling tasks.

Updated to NexusRaven-V2, this model is an updated open-source and commercially viable function calling model:

  • Versatile Function Calling Capability: capable of generating single function calls, nested calls, and parallel calls in many challenging cases.
  • Fully Explainable: capable of generating very detailed explanations for the function calls it generates. This behavior can be turned off, to save tokens during inference.
  • Performance Highlights: surpasses GPT-4 by up to 7% in function calling success rates in human-generated use cases involving nested and composite functions.
  • Generalization to the Unseen: has never been trained on the functions used in evaluation.
  • Commercially Permissive: The training does not involve any data generated by proprietary LLMs such as GPT-4. You have full control of the model when deployed in commercial applications.

Example prompt

Function:
def get_weather_data(coordinates):
    """
    Fetches weather data from the Open-Meteo API for the given latitude and longitude.

    Args:
    coordinates (tuple): The latitude of the location.

    Returns:
    float: The current temperature in the coordinates you've asked for
    """

Function:
def get_coordinates_from_city(city_name):
    """
    Fetches the latitude and longitude of a given city name using the Maps.co Geocoding API.

    Args:
    city_name (str): The name of the city.

    Returns:
    tuple: The latitude and longitude of the city.
    """

User Query: {query}<human_end>

This will generate a response similar to:

Call: get_weather_data(coordinates=get_coordinates_from_city(city_name='Seattle'))<bot_end>
Thought: The function call `get_weather_data(coordinates=get_coordinates_from_city(city_name='Seattle'))` answers the question "What's the weather like in Seattle right now?" by following these steps:

1. `get_coordinates_from_city(city_name='Seattle')`: This function call fetches the latitude and longitude of the city "Seattle" using the Maps.co Geocoding API.
2. `get_weather_data(coordinates=...)`: This function call fetches the current weather data for the coordinates returned by the previous function call.

Therefore, the function call `get_weather_data(coordinates=get_coordinates_from_city(city_name='Seattle'))` answers the question "What's the weather like in Seattle right now?" by first fetching the coordinates of the city "Seattle" and then fetching the current weather data for those coordinates.

References

GitHub

Hugging Face