Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions packages/app/cypress/component/quotes-content.cy.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,26 @@ describe('QuotesContent', () => {
cy.get('button[aria-label^="Jump to"]').should('have.length', uniqueOrgsWithLogo.length);
});

it('renders the Mooncake team quote with the KVCache.AI identity', () => {
cy.get('#quote-mooncake').within(() => {
cy.contains('Mooncake makes KV cache a first-class system resource').should('be.visible');
cy.contains('a', 'Mooncake Team')
.should('have.attr', 'href', 'https://kvcache.ai/')
.and('have.attr', 'target', '_blank');
cy.get('img[alt="Mooncake"]')
.should('have.attr', 'src', '/logos/kvcache-ai.svg')
.and(($logo) => {
expect(($logo[0] as HTMLImageElement).naturalWidth).to.be.greaterThan(0);
});
});

cy.mount(<QuotesContent locale="zh" />);
cy.get('#quote-mooncake').should(
'contain.text',
'Mooncake 将 KV cache 作为分离式 LLM 推理中的一等系统资源',
);
});

it('scrolls to the matching quote when a logo is clicked', () => {
const targetOrg = uniqueOrgsWithLogo[0];

Expand Down
5 changes: 5 additions & 0 deletions packages/app/public/logos/kvcache-ai.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions packages/app/src/components/quotes/quotes-data.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ describe('quote carousel membership', () => {
expect(new Set(CAROUSEL_ORGS).size).toBe(CAROUSEL_ORGS.length);
});

it('features Mooncake in the landing carousel', () => {
expect(CAROUSEL_ORGS).toContain('Mooncake');
});

it.each(OFF_CAROUSEL_ONLY)('excludes %s from the carousel', (org) => {
expect((CAROUSEL_ORGS as readonly string[]).includes(org)).toBe(false);
});
Expand Down
11 changes: 11 additions & 0 deletions packages/app/src/components/quotes/quotes-data.ts
Original file line number Diff line number Diff line change
Expand Up @@ -502,6 +502,16 @@ export const QUOTES: Quote[] = [
logo: 'lmcache.webp',
link: 'https://www.linkedin.com/in/yihuacheng-215133327/',
},
{
text: 'Mooncake makes KV cache a first-class system resource for disaggregated LLM serving. Real-world performance depends on the full configuration model, hardware, prefill/decode topology, parallelism strategy, and workload. InferenceX™ tests Mooncake across a broad and growing range of configurations, openly and reproducibly, giving the community a clear view of the tradeoffs and helping us improve the system faster.',
textZh:
'Mooncake 将 KV cache 作为分离式 LLM 推理中的一等系统资源。真实性能取决于完整的配置组合——模型、硬件、预填充/解码拓扑、并行策略和工作负载。InferenceX™ 以开放、可复现的方式,在持续扩展的丰富配置上测试 Mooncake,让社区清晰了解其中的权衡,也帮助我们更快地改进系统。',
name: 'Mooncake Team',
title: '',
org: 'Mooncake',
logo: 'kvcache-ai.svg',
link: 'https://kvcache.ai/',
},
];

/**
Expand Down Expand Up @@ -531,6 +541,7 @@ export const CAROUSEL_ORGS = [
'Red Hat',
'SambaNova',
'TileRT',
'Mooncake',
] as const;

/**
Expand Down
Loading