diff --git a/langserve/playground/src/components/ChatMessagesControlRenderer.tsx b/langserve/playground/src/components/ChatMessagesControlRenderer.tsx index 5b7f8aa1..f5808b9a 100644 --- a/langserve/playground/src/components/ChatMessagesControlRenderer.tsx +++ b/langserve/playground/src/components/ChatMessagesControlRenderer.tsx @@ -32,12 +32,22 @@ export const chatMessagesTester = rankWith( } if ("anyOf" in schema.items && schema.items.anyOf != null) { - return schema.items.anyOf.every( - (schema) => + return schema.items.anyOf.every((schema) => { + const isObjectMessage = schema.type === "object" && (schema.title?.endsWith("Message") || - schema.title?.endsWith("MessageChunk")) - ); + schema.title?.endsWith("MessageChunk")); + + const isTupleMessage = + schema.type === "array" && + schema.minItems === 2 && + schema.maxItems === 2 && + Array.isArray(schema.items) && + schema.items.length === 2 && + schema.items.every((schema) => schema.type === "string"); + + return isObjectMessage || isTupleMessage; + }); } return false;