Skip to content
Snippets Groups Projects
Unverified Commit b947ef47 authored by Deep Gandhi's avatar Deep Gandhi Committed by GitHub
Browse files

Merge pull request #265 from transformerlab/fix/generate-docs-plugin

Fix GenerateModal to handle the select PickADocument form type
parents dc4c7e74 b3b52d87
No related branches found
No related tags found
No related merge requests found
...@@ -71,8 +71,6 @@ export default function GenerateModal({ ...@@ -71,8 +71,6 @@ export default function GenerateModal({
const [hasDatasetKey, setHasDatasetKey] = useState(false); const [hasDatasetKey, setHasDatasetKey] = useState(false);
const [hasDocumentsKey, setHasDocumentsKey] = useState(false); const [hasDocumentsKey, setHasDocumentsKey] = useState(false);
const [hasContextKey, setHasContextKey] = useState(false); const [hasContextKey, setHasContextKey] = useState(false);
const [selectedFiles, setSelectedFiles] = useState<string[]>([]);
const [selectedFileNames, setSelectedFileNames] = useState<string[]>([]);
const [nameInput, setNameInput] = useState(''); const [nameInput, setNameInput] = useState('');
const [currentTab, setCurrentTab] = useState(0); const [currentTab, setCurrentTab] = useState(0);
const [contextInput, setContextInput] = useState(''); const [contextInput, setContextInput] = useState('');
...@@ -111,8 +109,6 @@ export default function GenerateModal({ ...@@ -111,8 +109,6 @@ export default function GenerateModal({
useEffect(() => { useEffect(() => {
if (open) { if (open) {
setSelectedFiles([]);
setSelectedFileNames([]);
if (!currentEvalName || currentEvalName === '') { if (!currentEvalName || currentEvalName === '') {
setNameInput(generateFriendlyName()); setNameInput(generateFriendlyName());
} else { } else {
...@@ -154,16 +150,11 @@ export default function GenerateModal({ ...@@ -154,16 +150,11 @@ export default function GenerateModal({
docsKeyExists && docsKeyExists &&
evalConfig.script_parameters.docs.length > 0 evalConfig.script_parameters.docs.length > 0
) { ) {
// const docstemp = evalConfig.script_parameters.docs.split(',').map((path) => ({ path }));
setHasContextKey(false); setHasContextKey(false);
setHasDocumentsKey(true); setHasDocumentsKey(true);
const docPaths = evalConfig.script_parameters.docs.split(',');
const docNames = evalConfig.script_parameters.docs = evalConfig.script_parameters.docs.split(',');
evalConfig.script_parameters.doc_names.split(',');
// const docFiles = docPaths.map((path) => new File([], path));
setSelectedFiles(docPaths);
setSelectedFileNames(docNames);
delete evalConfig.script_parameters.docs;
setConfig(evalConfig.script_parameters); setConfig(evalConfig.script_parameters);
} else if ( } else if (
contextKeyExists && contextKeyExists &&
...@@ -337,20 +328,11 @@ export default function GenerateModal({ ...@@ -337,20 +328,11 @@ export default function GenerateModal({
<PickADocumentMenu <PickADocumentMenu
experimentInfo={experimentInfo} experimentInfo={experimentInfo}
showFoldersOnly={false} showFoldersOnly={false}
name="documents" defaultValue={config.docs? config.docs : []}
name="docs"
/> />
<FormHelperText>Select documents to upload</FormHelperText> <FormHelperText>Select documents to upload</FormHelperText>
</FormControl> </FormControl>
{selectedFileNames.length > 0 && (
<Stack spacing={1} mt={2}>
<FormLabel>Selected Documents:</FormLabel>
{selectedFileNames.map((file, index) => (
<Sheet key={index} variant="outlined" p={1}>
{file}
</Sheet>
))}
</Stack>
)}
</Stack> </Stack>
); );
} }
...@@ -387,14 +369,10 @@ export default function GenerateModal({ ...@@ -387,14 +369,10 @@ export default function GenerateModal({
if (!formJson.run_name) { if (!formJson.run_name) {
formJson.run_name = formJson.template_name; formJson.run_name = formJson.template_name;
} }
// Add the selected file paths to the formJson as comma separated string
// if (hasDocumentsKey && selectedFiles.length > 0) { if (hasDocumentsKey && formJson.docs.length > 0) {
// formJson.docs = selectedFiles.map((file) => file.path).join(','); formJson.docs = JSON.parse(formJson.docs);
// formJson.generation_type = 'docs'; formJson.docs = formJson.docs.join(',');
// }
if (hasDocumentsKey && selectedFiles.length > 0) {
formJson.docs = selectedFiles.join(',');
formJson.doc_names = selectedFileNames.join(',');
formJson.generation_type = 'docs'; formJson.generation_type = 'docs';
} }
// Add context to the formJson // Add context to the formJson
...@@ -416,15 +394,9 @@ export default function GenerateModal({ ...@@ -416,15 +394,9 @@ export default function GenerateModal({
); );
setNameInput(generateFriendlyName()); setNameInput(generateFriendlyName());
setContextInput(''); setContextInput('');
setSelectedFiles([]);
setSelectedFileNames([]);
} else { } else {
const template_name = formJson.template_name; const template_name = formJson.template_name;
delete formJson.template_name; delete formJson.template_name;
// console.log('formJson', formJson);
// console.log("experimentInfo?.id", experimentInfo?.id);
// console.log("template_name", template_name);
// console.log("pluginId", pluginId);
const result = await chatAPI.EXPERIMENT_ADD_GENERATION( const result = await chatAPI.EXPERIMENT_ADD_GENERATION(
experimentInfo?.id, experimentInfo?.id,
template_name, template_name,
......
import { Option, Select } from '@mui/joy'; import { Option, Select } from '@mui/joy';
import { useState } from 'react'; import { useState, useEffect } from 'react';
import * as chatAPI from '../../../lib/transformerlab-api-sdk'; import * as chatAPI from '../../../lib/transformerlab-api-sdk';
import useSWR from 'swr'; import useSWR from 'swr';
const fetcher = (url) => fetch(url).then((res) => res.json()); const fetcher = (url) => fetch(url).then((res) => res.json());
...@@ -7,6 +7,7 @@ const fetcher = (url) => fetch(url).then((res) => res.json()); ...@@ -7,6 +7,7 @@ const fetcher = (url) => fetch(url).then((res) => res.json());
export default function PickADocumentMenu({ export default function PickADocumentMenu({
name, name,
experimentInfo, experimentInfo,
defaultValue = [],
showFoldersOnly = false, showFoldersOnly = false,
}) { }) {
const { const {
...@@ -17,6 +18,11 @@ export default function PickADocumentMenu({ ...@@ -17,6 +18,11 @@ export default function PickADocumentMenu({
const [selected, setSelected] = useState([]); const [selected, setSelected] = useState([]);
useEffect(() => {
setSelected(defaultValue || []);
}, [defaultValue]);
function handleChange(event, newValue) { function handleChange(event, newValue) {
console.log(newValue); console.log(newValue);
setSelected(newValue); setSelected(newValue);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment