diff --git a/src/renderer/components/Experiment/Generate/GenerateModal.tsx b/src/renderer/components/Experiment/Generate/GenerateModal.tsx
index b38f361ee1fba991855910dd5a39052e1e7cf04c..d7469eda5ddc7353c6b90b6c523500f41555f3a7 100644
--- a/src/renderer/components/Experiment/Generate/GenerateModal.tsx
+++ b/src/renderer/components/Experiment/Generate/GenerateModal.tsx
@@ -103,7 +103,6 @@ export default function GenerateModal({
       return chatAPI.Endpoints.Dataset.Info(selectedDataset);
     }, fetcher);
 
-
   useEffect(() => {
     if (open) {
       if (!currentGenerationName || currentGenerationName === '') {
@@ -152,10 +151,10 @@ export default function GenerateModal({
                 ) {
                   setHasContextKey(false);
                   setHasDocumentsKey(true);
-                  generationConfig.script_parameters.docs = generationConfig.script_parameters.docs.split(',');
+                  generationConfig.script_parameters.docs =
+                    generationConfig.script_parameters.docs.split(',');
                   setConfig(generationConfig.script_parameters);
                   setSelectedDocs(generationConfig.script_parameters.docs);
-
                 } else if (
                   contextKeyExists &&
                   generationConfig.script_parameters.context.length > 0
@@ -172,12 +171,14 @@ export default function GenerateModal({
                   hasDatasetKey &&
                   generationConfig.script_parameters.dataset_name.length > 0
                 ) {
-                  setSelectedDataset(generationConfig.script_parameters.dataset_name);
+                  setSelectedDataset(
+                    generationConfig.script_parameters.dataset_name
+                  );
                 }
                 if (
                   generationConfig.script_parameters._dataset_display_message &&
-                  generationConfig.script_parameters._dataset_display_message.length >
-                    0
+                  generationConfig.script_parameters._dataset_display_message
+                    .length > 0
                 ) {
                   setDatasetDisplayMessage(
                     generationConfig.script_parameters._dataset_display_message
@@ -225,16 +226,13 @@ export default function GenerateModal({
                 (key) => key.toLowerCase().includes('tflabcustomui_docs')
               );
 
-              const contextKeyExists = Object.keys(
-                parsedData.parameters
-              ).some((key) =>
-                key.toLowerCase().includes('tflabcustomui_context')
+              const contextKeyExists = Object.keys(parsedData.parameters).some(
+                (key) => key.toLowerCase().includes('tflabcustomui_context')
               );
               setHasContextKey(contextKeyExists);
               setHasDocumentsKey(docsKeyExists);
             }
             setConfig(tempconfig);
-
           } catch (e) {
             console.error('Error parsing data', e);
             parsedData = '';
@@ -306,9 +304,8 @@ export default function GenerateModal({
             showFoldersOnly={false}
             value={selectedDocs}
             onChange={setSelectedDocs}
-            defaultValue={config.docs ? config.docs : []}
-            // defaultValue={config.docs? config.docs : []}
             name="docs"
+            required
           />
           <FormHelperText>Select documents to upload</FormHelperText>
         </FormControl>
@@ -316,7 +313,6 @@ export default function GenerateModal({
     );
   }
 
-
   function ContextTab({ contextInput, setContextInput }) {
     return (
       <Stack spacing={2}>
@@ -388,7 +384,6 @@ export default function GenerateModal({
       }
       experimentInfoMutate();
       onClose();
-
     } catch (error) {
       console.error('Failed to edit generation:', error);
     }
diff --git a/src/renderer/components/Experiment/Rag/PickADocumentMenu.tsx b/src/renderer/components/Experiment/Rag/PickADocumentMenu.tsx
index 1bd7e0f353b34db8cb8652bf14124b0c247b713d..f67856a89cb84015d1b0294fe91f5ae4af3f833f 100644
--- a/src/renderer/components/Experiment/Rag/PickADocumentMenu.tsx
+++ b/src/renderer/components/Experiment/Rag/PickADocumentMenu.tsx
@@ -10,6 +10,7 @@ export default function PickADocumentMenu({
   value,
   onChange,
   defaultValue = [],
+  required = false,
   showFoldersOnly = false,
 }) {
   const {
@@ -18,21 +19,19 @@ export default function PickADocumentMenu({
     mutate,
   } = useSWR(chatAPI.Endpoints.Documents.List(experimentInfo?.id, ''), fetcher);
 
-
-  useEffect(() => {
-    if (defaultValue.length > 0) {
-      onChange(defaultValue);
-    }
-  }, [defaultValue]);
-
-
   function handleChange(event, newValue) {
     console.log(newValue);
     onChange(newValue);
   }
 
   return (
-    <Select multiple onChange={handleChange} value={value} name={name}>
+    <Select
+      multiple
+      onChange={handleChange}
+      value={value}
+      name={name}
+      required={required}
+    >
       {rows?.map((row) =>
         showFoldersOnly ? (
           row?.type === 'folder' && (