From 437eaccf02d98fda92b2b0d68c941454b1f96f1d Mon Sep 17 00:00:00 2001 From: Abhishekfm Date: Wed, 25 Feb 2026 17:39:56 +0530 Subject: [PATCH] Spacing --- .../aimodels/edit/[id]/versions/page.tsx | 631 +++++++++--------- 1 file changed, 318 insertions(+), 313 deletions(-) diff --git a/app/[locale]/dashboard/[entityType]/[entitySlug]/aimodels/edit/[id]/versions/page.tsx b/app/[locale]/dashboard/[entityType]/[entitySlug]/aimodels/edit/[id]/versions/page.tsx index 2d9f6926..3039e184 100644 --- a/app/[locale]/dashboard/[entityType]/[entitySlug]/aimodels/edit/[id]/versions/page.tsx +++ b/app/[locale]/dashboard/[entityType]/[entitySlug]/aimodels/edit/[id]/versions/page.tsx @@ -952,331 +952,336 @@ export default function VersionsPage() { limitHeight > - + setProviderFormData((prev) => ({ + ...prev, + provider: value, + })) + } + disabled={!!editingProvider} + /> + + setProviderFormData((prev) => ({ + ...prev, + providerModelId: value, + })) + } + helpText="e.g., gpt-4, meta-llama/Llama-2-7b-chat-hf" + /> - {/* OpenAI-specific fields */} - {providerFormData.provider === 'OPENAI' && ( - <> - - setProviderFormData((prev) => ({ - ...prev, - apiKey: value, - })) - } - helpText="Your OpenAI API key" - required - requiredIndicator={true} - /> - - )} + {/* OpenAI-specific fields */} + {providerFormData.provider === 'OPENAI' && ( + <> + + setProviderFormData((prev) => ({ + ...prev, + apiKey: value, + })) + } + helpText="Your OpenAI API key" + required + requiredIndicator={true} + /> + + )} - {/* Llama variants - Together AI, Replicate */} - {(providerFormData.provider === 'LLAMA_TOGETHER' || - providerFormData.provider === 'LLAMA_REPLICATE') && ( - <> - - setProviderFormData((prev) => ({ - ...prev, - apiKey: value, - })) - } - helpText={`Your ${providerFormData.provider === 'LLAMA_TOGETHER' ? 'Together AI' : 'Replicate'} API key`} - required - requiredIndicator={true} - /> - - )} + {/* Llama variants - Together AI, Replicate */} + {(providerFormData.provider === 'LLAMA_TOGETHER' || + providerFormData.provider === 'LLAMA_REPLICATE') && ( + <> + + setProviderFormData((prev) => ({ + ...prev, + apiKey: value, + })) + } + helpText={`Your ${providerFormData.provider === 'LLAMA_TOGETHER' ? 'Together AI' : 'Replicate'} API key`} + required + requiredIndicator={true} + /> + + )} - {/* Llama Ollama - needs endpoint URL */} - {providerFormData.provider === 'LLAMA_OLLAMA' && ( - <> - - setProviderFormData((prev) => ({ - ...prev, - apiEndpointUrl: value, - })) - } - placeholder="http://localhost:11434/api/generate" - helpText="URL where Ollama is running" - required - requiredIndicator={true} - /> - - )} + {/* Llama Ollama - needs endpoint URL */} + {providerFormData.provider === 'LLAMA_OLLAMA' && ( + <> + + setProviderFormData((prev) => ({ + ...prev, + apiEndpointUrl: value, + })) + } + placeholder="http://localhost:11434/api/generate" + helpText="URL where Ollama is running" + required + requiredIndicator={true} + /> + + )} - {/* Llama Custom - needs endpoint URL and API key */} - {providerFormData.provider === 'LLAMA_CUSTOM' && ( - <> - - setProviderFormData((prev) => ({ - ...prev, - apiEndpointUrl: value, - })) - } - placeholder="https://your-api.com/v1/chat/completions" - helpText="Full endpoint URL for your custom Llama API" - required - requiredIndicator={true} - /> - - setProviderFormData((prev) => ({ - ...prev, - apiKey: value, - })) - } - helpText="API key for authentication (if required)" - /> - - )} + {/* Llama Custom - needs endpoint URL and API key */} + {providerFormData.provider === 'LLAMA_CUSTOM' && ( + <> + + setProviderFormData((prev) => ({ + ...prev, + apiEndpointUrl: value, + })) + } + placeholder="https://your-api.com/v1/chat/completions" + helpText="Full endpoint URL for your custom Llama API" + required + requiredIndicator={true} + /> + + setProviderFormData((prev) => ({ + ...prev, + apiKey: value, + })) + } + helpText="API key for authentication (if required)" + /> + + )} - {/* Custom API - full configuration */} - {providerFormData.provider === 'CUSTOM' && ( - <> - - setProviderFormData((prev) => ({ - ...prev, - apiEndpointUrl: value, - })) - } - placeholder="https://your-api.com/v1/completions" - helpText="Full endpoint URL for your custom API" - required - requiredIndicator={true} - /> - - setProviderFormData((prev) => ({ - ...prev, - apiKey: value, - })) - } - helpText="API key or token for authentication" - /> - + setProviderFormData((prev) => ({ + ...prev, + apiAuthType: value, + })) + } + /> + + setProviderFormData((prev) => ({ + ...prev, + apiAuthHeaderName: value, + })) + } + placeholder="Authorization" + helpText="Header name for authentication (e.g., Authorization, X-API-Key)" + /> + + setProviderFormData((prev) => ({ + ...prev, + apiRequestTemplate: value, + })) + } + placeholder='{"model": "{model_id}", "messages": [{"role": "user", "content": "{input}"}] "temperature": {temperature}, "max_tokens": {max_tokens} }' - helpText="Request body template with placeholders like {input}, {prompt}, {model_id}, {temperature}, {max_tokens}" - /> - - setProviderFormData((prev) => ({ - ...prev, - apiResponsePath: value, - })) - } - placeholder="choices[0].message.content" - helpText="JSON path to extract response text" - /> - - setProviderFormData((prev) => ({ - ...prev, - apiTimeoutSeconds: parseInt(value) || 60, - })) - } - helpText="Request timeout in seconds" - /> - - )} - - {/* Huggingface-specific fields */} - {providerFormData.provider === 'HUGGINGFACE' && ( - <> - - setProviderFormData((prev) => ({ - ...prev, - hfAuthToken: value, - })) - } - helpText="Required for gated models" - /> - - setProviderFormData((prev) => ({ - ...prev, - framework: value, - })) - } - /> - - setProviderFormData((prev) => ({ - ...prev, - hfAttnImplementation: value, - })) - } - helpText="e.g., flash_attention_2, eager, sdpa" - /> - - setProviderFormData((prev) => ({ - ...prev, - hfUsePipeline: !prev.hfUsePipeline, - })) - } - > - Use Pipeline API - - - )} + helpText="Request body template with placeholders like {input}, {prompt}, {model_id}, {temperature}, {max_tokens}" + /> + + setProviderFormData((prev) => ({ + ...prev, + apiResponsePath: value, + })) + } + placeholder="choices[0].message.content" + helpText="JSON path to extract response text" + /> + + setProviderFormData((prev) => ({ + ...prev, + apiTimeoutSeconds: parseInt(value) || 60, + })) + } + helpText="Request timeout in seconds" + /> + + )} - - setProviderFormData((prev) => ({ - ...prev, - isPrimary: !prev.isPrimary, - })) - } - > - Set as Primary Provider - + {/* Huggingface-specific fields */} + {providerFormData.provider === 'HUGGINGFACE' && ( + <> + + setProviderFormData((prev) => ({ + ...prev, + hfAuthToken: value, + })) + } + helpText="Required for gated models" + /> + + setProviderFormData((prev) => ({ + ...prev, + framework: value, + })) + } + /> + + setProviderFormData((prev) => ({ + ...prev, + hfAttnImplementation: value, + })) + } + helpText="e.g., flash_attention_2, eager, sdpa" + /> + + setProviderFormData((prev) => ({ + ...prev, + hfUsePipeline: !prev.hfUsePipeline, + })) + } + > + Use Pipeline API + + + )} -
- - + Set as Primary Provider + + +
+ + +