basic db seeding
This commit is contained in:
@@ -15,23 +15,25 @@ model Experiment {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
label String
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
InputVariable InputVariable[]
|
||||
PromptVariant PromptVariant[]
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
TemplateVariable TemplateVariable[]
|
||||
PromptVariant PromptVariant[]
|
||||
TestScenario TestScenario[]
|
||||
}
|
||||
|
||||
model PromptVariant {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
label String
|
||||
|
||||
visible Boolean @default(true)
|
||||
sortIndex Int @default(0)
|
||||
|
||||
config Json
|
||||
|
||||
experimentId String @db.Uuid
|
||||
experiment Experiment @relation(fields: [experimentId], references: [id])
|
||||
|
||||
sortIndex Int @default(0)
|
||||
label String
|
||||
|
||||
config Json
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
ModelOutput ModelOutput[]
|
||||
@@ -40,15 +42,20 @@ model PromptVariant {
|
||||
model TestScenario {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
|
||||
sortIndex Int @default(0)
|
||||
visible Boolean @default(true)
|
||||
sortIndex Int @default(0)
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
ScenarioVariableVal ScenarioVariableVal[]
|
||||
ModelOutput ModelOutput[]
|
||||
variableValues Json
|
||||
|
||||
experimentId String @db.Uuid
|
||||
experiment Experiment @relation(fields: [experimentId], references: [id])
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
ModelOutput ModelOutput[]
|
||||
}
|
||||
|
||||
model InputVariable {
|
||||
model TemplateVariable {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
|
||||
label String
|
||||
@@ -56,26 +63,8 @@ model InputVariable {
|
||||
experimentId String @db.Uuid
|
||||
experiment Experiment @relation(fields: [experimentId], references: [id])
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
ScenarioVariableVal ScenarioVariableVal[]
|
||||
}
|
||||
|
||||
model ScenarioVariableVal {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
|
||||
inputVariableId String @db.Uuid
|
||||
inputVariable InputVariable? @relation(fields: [inputVariableId], references: [id])
|
||||
|
||||
testScenarioId String @db.Uuid
|
||||
testScenario TestScenario? @relation(fields: [testScenarioId], references: [id])
|
||||
|
||||
value String
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@unique([inputVariableId, testScenarioId])
|
||||
}
|
||||
|
||||
model ModelOutput {
|
||||
@@ -92,6 +81,8 @@ model ModelOutput {
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@unique([promptVariantId, testScenarioId])
|
||||
}
|
||||
|
||||
// Necessary for Next auth
|
||||
|
||||
82
prisma/seed.ts
Normal file
82
prisma/seed.ts
Normal file
@@ -0,0 +1,82 @@
|
||||
import { prisma } from "~/server/db";
|
||||
|
||||
const experimentId = "11111111-1111-1111-1111-111111111111";
|
||||
const experiment = await prisma.experiment.upsert({
|
||||
where: {
|
||||
id: experimentId,
|
||||
},
|
||||
update: {},
|
||||
create: {
|
||||
id: experimentId,
|
||||
label: "Quick Start",
|
||||
},
|
||||
});
|
||||
|
||||
await prisma.promptVariant.deleteMany({
|
||||
where: {
|
||||
experimentId,
|
||||
},
|
||||
});
|
||||
|
||||
const resp = await prisma.promptVariant.createMany({
|
||||
data: [
|
||||
{
|
||||
experimentId,
|
||||
label: "Variant 1",
|
||||
sortIndex: 0,
|
||||
config: {
|
||||
model: "gpt-3.5-turbo",
|
||||
messages: [{ role: "user", content: "What is the capitol of {{input}}?" }],
|
||||
temperature: 0,
|
||||
},
|
||||
},
|
||||
{
|
||||
experimentId,
|
||||
label: "Variant 2",
|
||||
sortIndex: 1,
|
||||
config: {
|
||||
model: "gpt-3.5-turbo",
|
||||
messages: [{ role: "user", content: "What is the capitol of the US state {{input}}?" }],
|
||||
temperature: 0,
|
||||
},
|
||||
},
|
||||
],
|
||||
});
|
||||
|
||||
await prisma.templateVariable.deleteMany({
|
||||
where: {
|
||||
experimentId,
|
||||
},
|
||||
});
|
||||
|
||||
await prisma.templateVariable.createMany({
|
||||
data: [
|
||||
{
|
||||
experimentId,
|
||||
label: "input",
|
||||
},
|
||||
],
|
||||
});
|
||||
|
||||
await prisma.testScenario.deleteMany({
|
||||
where: {
|
||||
experimentId,
|
||||
},
|
||||
});
|
||||
|
||||
await prisma.testScenario.createMany({
|
||||
data: [
|
||||
{
|
||||
experimentId,
|
||||
variableValues: {
|
||||
input: "Washington",
|
||||
},
|
||||
},
|
||||
{
|
||||
experimentId,
|
||||
variableValues: {
|
||||
input: "Georgia",
|
||||
},
|
||||
},
|
||||
],
|
||||
});
|
||||
Reference in New Issue
Block a user