Files
markbaseengine/Sources/MarkBaseServer/APIServer.swift
T
MarkBase Admin ac75faa0cc
CI / build-and-test (push) Has been cancelled
Initial commit: E4B-MarkBase model integration with passing tests
- 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
2026-06-23 18:12:35 +08:00

32 lines
1.3 KiB
Swift

import MarkBase
/// Entry point for MarkBase API server
/// Usage: swift run G12BServer [model_dir] [port] [model_id] [--benchmark]
@main
public struct ServerMain {
public static func main() async throws {
let args = CommandLine.arguments
// Check for benchmark mode
if args.contains("--benchmark") {
let modelDir = args.count > 2 ? args[1] : "./model"
let modelName = args.count > 3 ? args[2] : "markbase"
var benchmark = PerformanceBenchmark(modelDir: modelDir, modelName: modelName)
try await benchmark.run()
return
}
let modelDir = args.count > 1 ? args[1] : "./model"
let port = args.count > 2 ? Int(args[2]) ?? 8080 : 8080
let modelId = args.count > 3 ? args[3] : "markbase-12b"
print("\n╔═════════════════════════════════════════════╗")
print("║ MarkBase API Server ║")
print("╚═════════════════════════════════════════════╝\n")
let server = try MarkBaseServer(modelDir: modelDir, modelId: modelId)
try await server.start(port: port)
}
}