Initial commit: E4B-MarkBase model integration with passing tests
CI / build-and-test (push) Has been cancelled
CI / build-and-test (push) Has been cancelled
- E4B-MarkBase model (42 layers, 4.4GB) loaded successfully - All Phase 1-6 tests passed (model loading, forward pass, vision/audio towers, token generation, performance) - All stress tests passed (5/5 in 127.6s) - Concurrent inference - Memory stress (67.5 tok/s, 0 NaN) - Continuous generation - Batch processing - Long-running stability - Swift Metal inference engine with multimodal support
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
import XCTest
|
||||
@testable import MarkBase
|
||||
|
||||
final class CoreTests: XCTestCase {
|
||||
|
||||
func testTokenizerSpaces() throws {
|
||||
let modelDir = "/Users/accusys/MarkBaseEngine/models/E4B-MarkBase"
|
||||
let tokenizer = try TokenizerFactory.load(modelDir: modelDir)
|
||||
|
||||
// Test space preservation
|
||||
let input = "Hello World"
|
||||
let tokens = tokenizer.encode(text: input)
|
||||
let decoded = tokenizer.decode(tokens: tokens)
|
||||
|
||||
XCTAssertEqual(decoded.contains(" "), true, "Spaces should be preserved")
|
||||
}
|
||||
|
||||
func testMultimodalPipeline() throws {
|
||||
let modelDir = "/Users/accusys/MarkBaseEngine/models/E4B-MarkBase"
|
||||
let engine = try MarkBaseEngine(autoCompile: true)
|
||||
let mm = try MultimodalModel(modelDir: modelDir, engine: engine, maxContextLength: 512)
|
||||
|
||||
XCTAssertNotNil(mm.visionTowerFull, "Vision tower should load")
|
||||
XCTAssertEqual(mm.visionTowerFull?.config.numHiddenLayers, 16, "Vision tower has 16 layers")
|
||||
}
|
||||
|
||||
func testSamplerFiltering() throws {
|
||||
let sampler = Sampler()
|
||||
|
||||
// Create test logits
|
||||
var logits = [Float](repeating: 0, count: 262144)
|
||||
logits[258123] = 30.0 // Unused token with high logit
|
||||
logits[500] = 29.0 // Regular token
|
||||
|
||||
// Test filtering
|
||||
let sampled = sampler.sample(logits: logits, temperature: 1.0, topK: 50, topP: 0.95, filterUnusedTokens: true)
|
||||
|
||||
XCTAssertLessThan(sampled, 258000, "Should not sample unused tokens when filtering enabled")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user