Skip to content

Instantly share code, notes, and snippets.

@jamesmurdza
Last active February 5, 2025 07:27

Revisions

  1. jamesmurdza revised this gist Feb 5, 2025. 1 changed file with 8 additions and 1 deletion.
    9 changes: 8 additions & 1 deletion MistralBaseProvider.py
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,12 @@
    class MistralBaseProvider(OpenAIBaseProvider):

    def create_function_def(self, name, details, properties, required):
    # Wrap all descriptions to avoid Mistral validation error.
    details["description"] = {"type": "string", "description": details.get("description")}
    return super().create_function_def(name, details, properties, required)
    return super().create_function_def(name, details, properties, required)

    def call(self, messages, functions=None):
    # Make the last message a prefix if its role is assistant.
    if messages and messages[-1].get("role") == "assistant":
    messages[-1]["prefix"] = True
    return super().call(messages, functions)
  2. jamesmurdza created this gist Feb 5, 2025.
    5 changes: 5 additions & 0 deletions MistralBaseProvider.py
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,5 @@
    class MistralBaseProvider(OpenAIBaseProvider):

    def create_function_def(self, name, details, properties, required):
    details["description"] = {"type": "string", "description": details.get("description")}
    return super().create_function_def(name, details, properties, required)