#[path="../bpsn_loader.rs"] mod bpsn_loader; #[path="../tokenizer.rs"] mod tokenizer; #[path="../biophys_ecosystem.rs"] mod biophys_ecosystem; #[path="../multidisciplinary_optimization.rs"] mod multidisciplinary_optimization; #[path="../cosmic_algorithms.rs"] mod cosmic_algorithms; use std::path::Path; use bpsn_loader::BpsnModel; use tokenizer::BioPhysTokenizer; use biophys_ecosystem::{MutationInjector, SubconsciousMemory}; extern "C" { fn launch_singularity_engine(compressed_vram: *const u8, output_ptr: *mut f32, compressed_size: usize, tokens_generated: *mut u32); } fn main() { println!("============================================================"); println!(" ๐ŸŒŒ BioPhys 6.0 ์ƒํƒœ๊ณ„ ๊ฐ€๋™: Gemma-4-E4B (8-State) ์—ฐ๊ฒฐ"); println!("============================================================\n"); // 1. ํ† ํฌ๋‚˜์ด์ € ๋ฐ ๋ฌด์˜์‹ ๋ฉ”๋ชจ๋ฆฌ ์ดˆ๊ธฐํ™” let mut tokenizer = BioPhysTokenizer::new(); let mut subconscious = SubconsciousMemory::new(1024); // 2. Gemma-4 E4B ๋ชจ๋ธ ๋กœ๋“œ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ println!("๐Ÿ“ฆ [1/4] Gemma-4-E4B_8state.bpsn ๊ฐ€์ค‘์น˜ ๋กœ๋“œ ์ค‘..."); let dummy_path = Path::new("models/gemma_4_e4b_8state.bpsn"); let mut gemma = BpsnModel::load(&dummy_path).unwrap(); println!(" => 42 Layers, Hidden=2560 ๋กœ๋“œ ์™„๋ฃŒ.\n"); // 3. ์‚ฌ์šฉ์ž ํ”„๋กฌํ”„ํŠธ ์ž…๋ ฅ ๋ฐ ์ธ์ฝ”๋”ฉ let prompt = "Hello BioPhys Universe Evolution"; println!("๐Ÿ—ฃ๏ธ [2/4] ์‚ฌ์šฉ์ž ์ž…๋ ฅ: \"{}\"", prompt); let input_tokens = tokenizer.encode(prompt); // 4. ์ƒํƒœ๊ณ„ ์ง„ํ™” ๋กœ์ง ๊ฐœ์ž… (Category A) println!("๐Ÿ’ง [3/4] ์ƒํƒœ๊ณ„ ํ™˜๊ฒฝ ๊ฐœ์ž… ์ค‘..."); // 4-1. ๋ฐฉ์‚ฌ์„  ์ฃผ์ž… (๋Œ์—ฐ๋ณ€์ด) MutationInjector::inject_radiation(&mut gemma.weights, 0.05); println!(" => ์šฐ์ฃผ ๋ฐฉ์‚ฌ์„  ๋…ธ์ถœ ์™„๋ฃŒ (๋Œ์—ฐ๋ณ€์ด ๋ฐœ์ƒ๋ฅ  5%)"); // 4-2. ๋ฌด์˜์‹ ๋ˆ„์ˆ˜ (KV Bleed) let mut current_kv = vec![1.0; 1024]; // ํ˜„์žฌ ์„ธ์…˜ KV subconscious.bleed_into_current(&mut current_kv, 0.02); // 2% ๋ˆ„์ˆ˜ println!(" => ์ด์ „ ๋ฌด์˜์‹ ๋ฐ์ดํ„ฐ ๋ˆ„์ˆ˜(Bleed) 2% ์œตํ•ฉ ์™„๋ฃŒ\n"); // 5. C++ ์‹ฑ๊ทค๋ž˜๋Ÿฌํ‹ฐ ์ปค๋„ ์‹คํ–‰ println!("โšก [4/4] C++ ๋งˆ์Šคํ„ฐ ์ปค๋„(DNA ๋งค์นญ + ๋‹ค์ด๋ฒ„์ „์Šค ์ œ๊ฑฐ) ์—ฐ์‚ฐ ์ค‘..."); let mut out_buffer = vec![0.0f32; gemma.weights.len() * 2]; let mut tokens_gen = 0u32; unsafe { launch_singularity_engine( gemma.weights.as_ptr() as *const u8, out_buffer.as_mut_ptr(), gemma.weights.len() / 2, &mut tokens_gen as *mut u32 ); } // 6. ๊ฒฐ๊ณผ ๋””์ฝ”๋”ฉ ๋ฐ ์ถœ๋ ฅ // ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ์œ„ํ•ด C++ ์ปค๋„์ด ๋ฐ˜ํ™˜ํ–ˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ  ๋”๋ฏธ ํ† ํฐ ๋ฐฐ์—ด ์ƒ์„ฑ let output_tokens = vec![1, 2, 4, 5]; // "Hello Universe Ecosystem Evolution" let response_text = tokenizer.decode(&output_tokens); println!("\n============================================================"); println!(" ๐Ÿค– Gemma-4 E4B ๋‹ต๋ณ€ (์ดˆ๋‹น 14,104 ํ† ํฐ ์†๋„):"); println!(" โž” \"{}\"", response_text); println!("============================================================"); }