Excluding properties with defaults from required as per issue #41 (#74)

This commit is contained in:
Kolja Beigel
2023-07-31 17:42:16 +02:00
committed by GitHub
parent f5af0dda42
commit 7a90b13eba
+7 -3
View File
@@ -72,8 +72,9 @@ class openai_function:
if k not in ("v__duplicate_kwargs", "args", "kwargs")
}
parameters["required"] = sorted(
parameters["properties"]
) # bug workaround see lc
k for k, v in parameters["properties"].items()
if not "default" in v
)
_remove_a_key(parameters, "additionalProperties")
self.openai_schema = {
"name": self.func.__name__,
@@ -130,7 +131,10 @@ class OpenAISchema(BaseModel):
parameters = {
k: v for k, v in schema.items() if k not in ("title", "description")
}
parameters["required"] = sorted(parameters["properties"])
parameters["required"] = sorted(
k for k, v in parameters["properties"].items()
if not "default" in v
)
if "description" not in schema:
schema[