|
150 | 150 | "health" |
151 | 151 | ], |
152 | 152 | "summary": "Readiness Probe Get Method", |
153 | | - "description": "Ready status of service.", |
| 153 | + "description": "Ready status of service with provider health details.", |
154 | 154 | "operationId": "readiness_probe_get_method_v1_readiness_get", |
155 | 155 | "responses": { |
156 | 156 | "200": { |
|
168 | 168 | "content": { |
169 | 169 | "application/json": { |
170 | 170 | "schema": { |
171 | | - "$ref": "#/components/schemas/NotAvailableResponse" |
| 171 | + "$ref": "#/components/schemas/ReadinessResponse" |
172 | 172 | } |
173 | 173 | } |
174 | 174 | } |
|
358 | 358 | }, |
359 | 359 | "user_data_collection": { |
360 | 360 | "$ref": "#/components/schemas/UserDataCollection" |
| 361 | + }, |
| 362 | + "mcp_servers": { |
| 363 | + "items": { |
| 364 | + "$ref": "#/components/schemas/ModelContextProtocolServer" |
| 365 | + }, |
| 366 | + "type": "array", |
| 367 | + "title": "Mcp Servers", |
| 368 | + "default": [] |
361 | 369 | } |
362 | 370 | }, |
363 | 371 | "type": "object", |
|
557 | 565 | } |
558 | 566 | ] |
559 | 567 | }, |
| 568 | + "ModelContextProtocolServer": { |
| 569 | + "properties": { |
| 570 | + "name": { |
| 571 | + "type": "string", |
| 572 | + "title": "Name" |
| 573 | + }, |
| 574 | + "provider_id": { |
| 575 | + "type": "string", |
| 576 | + "title": "Provider Id", |
| 577 | + "default": "model-context-protocol" |
| 578 | + }, |
| 579 | + "url": { |
| 580 | + "type": "string", |
| 581 | + "title": "Url" |
| 582 | + } |
| 583 | + }, |
| 584 | + "type": "object", |
| 585 | + "required": [ |
| 586 | + "name", |
| 587 | + "url" |
| 588 | + ], |
| 589 | + "title": "ModelContextProtocolServer", |
| 590 | + "description": "model context protocol server configuration." |
| 591 | + }, |
560 | 592 | "ModelsResponse": { |
561 | 593 | "properties": { |
562 | 594 | "models": { |
|
575 | 607 | "title": "ModelsResponse", |
576 | 608 | "description": "Model representing a response to models request." |
577 | 609 | }, |
578 | | - "NotAvailableResponse": { |
| 610 | + "ProviderHealthStatus": { |
579 | 611 | "properties": { |
580 | | - "detail": { |
581 | | - "additionalProperties": { |
582 | | - "type": "string" |
583 | | - }, |
584 | | - "type": "object", |
585 | | - "title": "Detail" |
| 612 | + "provider_id": { |
| 613 | + "type": "string", |
| 614 | + "title": "Provider Id" |
| 615 | + }, |
| 616 | + "status": { |
| 617 | + "type": "string", |
| 618 | + "title": "Status" |
| 619 | + }, |
| 620 | + "message": { |
| 621 | + "anyOf": [ |
| 622 | + { |
| 623 | + "type": "string" |
| 624 | + }, |
| 625 | + { |
| 626 | + "type": "null" |
| 627 | + } |
| 628 | + ], |
| 629 | + "title": "Message" |
586 | 630 | } |
587 | 631 | }, |
588 | 632 | "type": "object", |
589 | 633 | "required": [ |
590 | | - "detail" |
| 634 | + "provider_id", |
| 635 | + "status" |
591 | 636 | ], |
592 | | - "title": "NotAvailableResponse", |
593 | | - "description": "Model representing error response for readiness endpoint.", |
594 | | - "examples": [ |
595 | | - { |
596 | | - "detail": { |
597 | | - "cause": "Index is not ready", |
598 | | - "response": "Service is not ready" |
599 | | - } |
600 | | - }, |
601 | | - { |
602 | | - "detail": { |
603 | | - "cause": "LLM is not ready", |
604 | | - "response": "Service is not ready" |
605 | | - } |
606 | | - } |
607 | | - ] |
| 637 | + "title": "ProviderHealthStatus", |
| 638 | + "description": "Model representing the health status of a provider.\n\nAttributes:\n provider_id: The ID of the provider.\n status: The health status ('ok', 'unhealthy', 'not_implemented').\n message: Optional message about the health status." |
608 | 639 | }, |
609 | 640 | "QueryRequest": { |
610 | 641 | "properties": { |
|
745 | 776 | "reason": { |
746 | 777 | "type": "string", |
747 | 778 | "title": "Reason" |
| 779 | + }, |
| 780 | + "providers": { |
| 781 | + "items": { |
| 782 | + "$ref": "#/components/schemas/ProviderHealthStatus" |
| 783 | + }, |
| 784 | + "type": "array", |
| 785 | + "title": "Providers" |
748 | 786 | } |
749 | 787 | }, |
750 | 788 | "type": "object", |
751 | 789 | "required": [ |
752 | 790 | "ready", |
753 | | - "reason" |
| 791 | + "reason", |
| 792 | + "providers" |
754 | 793 | ], |
755 | 794 | "title": "ReadinessResponse", |
756 | | - "description": "Model representing a response to a readiness request.\n\nAttributes:\n ready: The readiness of the service.\n reason: The reason for the readiness.\n\nExample:\n ```python\n readiness_response = ReadinessResponse(ready=True, reason=\"service is ready\")\n ```", |
| 795 | + "description": "Model representing response to a readiness request.\n\nAttributes:\n ready: If service is ready.\n reason: The reason for the readiness.\n providers: List of unhealthy providers in case of readiness failure.\n\nExample:\n ```python\n readiness_response = ReadinessResponse(\n ready=False,\n reason=\"Service is not ready\",\n providers=[\n ProviderHealthStatus(\n provider_id=\"ollama\",\n status=\"Error\",\n message=\"Server is unavailable\"\n )\n ]\n )\n ```", |
757 | 796 | "examples": [ |
758 | 797 | { |
| 798 | + "providers": [], |
759 | 799 | "ready": true, |
760 | | - "reason": "service is ready" |
| 800 | + "reason": "Service is ready" |
761 | 801 | } |
762 | 802 | ] |
763 | 803 | }, |
|
792 | 832 | "type": "boolean", |
793 | 833 | "title": "Access Log", |
794 | 834 | "default": true |
| 835 | + }, |
| 836 | + "tls_config": { |
| 837 | + "$ref": "#/components/schemas/TLSConfiguration", |
| 838 | + "default": {} |
795 | 839 | } |
796 | 840 | }, |
797 | 841 | "type": "object", |
|
826 | 870 | } |
827 | 871 | ] |
828 | 872 | }, |
| 873 | + "TLSConfiguration": { |
| 874 | + "properties": { |
| 875 | + "tls_certificate_path": { |
| 876 | + "anyOf": [ |
| 877 | + { |
| 878 | + "type": "string", |
| 879 | + "format": "file-path" |
| 880 | + }, |
| 881 | + { |
| 882 | + "type": "null" |
| 883 | + } |
| 884 | + ], |
| 885 | + "title": "Tls Certificate Path" |
| 886 | + }, |
| 887 | + "tls_key_path": { |
| 888 | + "anyOf": [ |
| 889 | + { |
| 890 | + "type": "string", |
| 891 | + "format": "file-path" |
| 892 | + }, |
| 893 | + { |
| 894 | + "type": "null" |
| 895 | + } |
| 896 | + ], |
| 897 | + "title": "Tls Key Path" |
| 898 | + }, |
| 899 | + "tls_key_password": { |
| 900 | + "anyOf": [ |
| 901 | + { |
| 902 | + "type": "string", |
| 903 | + "format": "file-path" |
| 904 | + }, |
| 905 | + { |
| 906 | + "type": "null" |
| 907 | + } |
| 908 | + ], |
| 909 | + "title": "Tls Key Password" |
| 910 | + } |
| 911 | + }, |
| 912 | + "type": "object", |
| 913 | + "title": "TLSConfiguration", |
| 914 | + "description": "TLS configuration." |
| 915 | + }, |
829 | 916 | "UserDataCollection": { |
830 | 917 | "properties": { |
831 | 918 | "feedback_disabled": { |
|
843 | 930 | } |
844 | 931 | ], |
845 | 932 | "title": "Feedback Storage" |
| 933 | + }, |
| 934 | + "transcripts_disabled": { |
| 935 | + "type": "boolean", |
| 936 | + "title": "Transcripts Disabled", |
| 937 | + "default": true |
| 938 | + }, |
| 939 | + "transcripts_storage": { |
| 940 | + "anyOf": [ |
| 941 | + { |
| 942 | + "type": "string" |
| 943 | + }, |
| 944 | + { |
| 945 | + "type": "null" |
| 946 | + } |
| 947 | + ], |
| 948 | + "title": "Transcripts Storage" |
846 | 949 | } |
847 | 950 | }, |
848 | 951 | "type": "object", |
|
0 commit comments