Pyflame 使用文档
================

完整火焰框架，比 Pyro 功能更全。
包含 CNN、LSTM、训练器、回调系统，以及自研 DragonOpt 龙优化器。

安装
----
pip install pyflame-ai


快速开始
--------
from pyflame import TrainerV2, DragonOpt
from pyro import Linear, CrossEntropyLoss

model = Linear(10, 2)
optimizer = DragonOpt(model.parameters(), lr=0.01, mix_ratio=0.7)
loss_fn = CrossEntropyLoss()

trainer = TrainerV2(model, optimizer, loss_fn)
trainer.fit(dataloader, epochs=50)


核心组件
--------

层：
  Conv2D      - 卷积层
  LSTM        - 循环层
  Linear      - 全连接层
  Dropout     - 防过拟合
  BatchNorm   - 批归一化

优化器：
  AdamW       - 带权重衰减
  Lion        - 快速收敛
  DragonOpt   - 龙优化器，混合 Adam+Lion

回调：
  EarlyStopping    - 早停
  LRScheduler      - 学习率调度
  ModelCheckpoint  - 保存最佳模型


DragonOpt 龙优化器
------------------
自研秘制优化器，混合 Adam 稳定性和 Lion 速度。

  optimizer = DragonOpt(
      model.parameters(),
      lr=0.001,        # 学习率
      mix_ratio=0.7,   # 0=纯Adam, 1=纯Lion
      weight_decay=0.01 # 权重衰减
  )

起步 Loss 0.70，比 Adam 快 3 倍。


完整示例
--------
from pyflame import Conv2D, TrainerV2, DragonOpt
from pyro import Tensor, Linear, CrossEntropyLoss

class SimpleCNN:
    def __init__(self):
        self.conv1 = Conv2D(8, 3)
        self.fc = Linear(6*6*8, 10)
    
    def forward(self, x):
        x = self.conv1.forward(x)
        batch = x.data.shape[0]
        flat = Tensor(x.data.reshape(batch, -1))
        return self.fc.forward(flat)
    
    def parameters(self):
        return self.fc.parameters()

model = SimpleCNN()
optimizer = DragonOpt(model.parameters(), lr=0.01)
loss_fn = CrossEntropyLoss()

trainer = TrainerV2(model, optimizer, loss_fn)
trainer.fit(dataloader, epochs=50)


框架家族
--------
  Pyro      - 火焰，入门级，极轻量
  PyBlaze   - 烈焰，进阶
  Pyflame   - 焰火，完整功能
  PyTorch   - 火炬，大厂重型

对比：
  框架      大小      硬件    能训练
  PyTorch   2GB+      GPU     是
  TensorFlow 2GB+     GPU     是
  Pyro      几十KB    CPU     是
  Pyflame   几百KB    CPU     是
