File size: 1,449 Bytes
852dc0d 22f8eb7 a94a061 046ca57 5b8fd7e 25647ae 852dc0d 22f8eb7 a94a061 852dc0d 046ca57 5b8fd7e 25647ae 852dc0d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
import { useModel } from '../contexts/ModelContext'
import { TextGenerationProvider } from '../contexts/TextGenerationContext'
import { FeatureExtractionProvider } from '../contexts/FeatureExtractionContext'
import { ZeroShotClassificationProvider } from '../contexts/ZeroShotClassificationContext'
import { ImageClassificationProvider } from '../contexts/ImageClassificationContext'
import { TextClassificationProvider } from '../contexts/TextClassificationContext'
import { TextToSpeechProvider } from '../contexts/TextToSpeechContext'
export const PipelineLayout = ({ children }: { children: React.ReactNode }) => {
const { pipeline } = useModel()
switch (pipeline) {
case 'text-generation':
return <TextGenerationProvider>{children}</TextGenerationProvider>
case 'feature-extraction':
return <FeatureExtractionProvider>{children}</FeatureExtractionProvider>
case 'zero-shot-classification':
return (
<ZeroShotClassificationProvider>
{children}
</ZeroShotClassificationProvider>
)
case 'image-classification':
return (
<ImageClassificationProvider>{children}</ImageClassificationProvider>
)
case 'text-classification':
return <TextClassificationProvider>{children}</TextClassificationProvider>
case 'text-to-speech':
return <TextToSpeechProvider>{children}</TextToSpeechProvider>
default:
return <>{children}</>
}
}
|