card-framework 1.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (358) hide show
  1. card_framework-1.0.1/LICENSE.md +137 -0
  2. card_framework-1.0.1/PKG-INFO +344 -0
  3. card_framework-1.0.1/README.md +295 -0
  4. card_framework-1.0.1/pyproject.toml +137 -0
  5. card_framework-1.0.1/setup.cfg +4 -0
  6. card_framework-1.0.1/src/card_framework/__init__.py +21 -0
  7. card_framework-1.0.1/src/card_framework/_vendor/__init__.py +2 -0
  8. card_framework-1.0.1/src/card_framework/_vendor/index_tts/LICENSE_ZH.txt +52 -0
  9. card_framework-1.0.1/src/card_framework/_vendor/index_tts/README.md +479 -0
  10. card_framework-1.0.1/src/card_framework/_vendor/index_tts/archive/README_INDEXTTS_1_5.md +247 -0
  11. card_framework-1.0.1/src/card_framework/_vendor/index_tts/docs/README_zh.md +399 -0
  12. card_framework-1.0.1/src/card_framework/_vendor/index_tts/examples/cases.jsonl +12 -0
  13. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/ECAPA_TDNN.py +656 -0
  14. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/__init__.py +0 -0
  15. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/activations.py +122 -0
  16. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_activation/__init__.py +0 -0
  17. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_activation/cuda/__init__.py +0 -0
  18. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_activation/cuda/activation1d.py +76 -0
  19. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_activation/cuda/load.py +121 -0
  20. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_activation/torch/__init__.py +6 -0
  21. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_activation/torch/act.py +31 -0
  22. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_activation/torch/filter.py +102 -0
  23. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_activation/torch/resample.py +58 -0
  24. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_torch/__init__.py +6 -0
  25. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_torch/act.py +29 -0
  26. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_torch/filter.py +96 -0
  27. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/alias_free_torch/resample.py +49 -0
  28. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/bigvgan.py +534 -0
  29. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/models.py +451 -0
  30. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/nnet/CNN.py +546 -0
  31. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/nnet/__init__.py +0 -0
  32. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/nnet/linear.py +89 -0
  33. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/nnet/normalization.py +670 -0
  34. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/BigVGAN/utils.py +101 -0
  35. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/__init__.py +0 -0
  36. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/accel/__init__.py +9 -0
  37. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/accel/accel_engine.py +659 -0
  38. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/accel/attention.py +154 -0
  39. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/accel/gpt2_accel.py +181 -0
  40. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/accel/kv_manager.py +209 -0
  41. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/cli.py +65 -0
  42. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/__init__.py +0 -0
  43. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/conformer/__init__.py +0 -0
  44. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/conformer/attention.py +312 -0
  45. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/conformer/embedding.py +163 -0
  46. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/conformer/subsampling.py +348 -0
  47. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/conformer_encoder.py +520 -0
  48. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/model.py +713 -0
  49. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/model_v2.py +796 -0
  50. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/perceiver.py +317 -0
  51. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/transformers_beam_search.py +1013 -0
  52. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/transformers_generation_utils.py +4747 -0
  53. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/transformers_gpt2.py +1878 -0
  54. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/gpt/transformers_modeling_utils.py +5525 -0
  55. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/infer.py +690 -0
  56. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/infer_v2.py +856 -0
  57. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/__init__.py +16 -0
  58. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/__main__.py +36 -0
  59. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/model/__init__.py +4 -0
  60. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/model/base.py +294 -0
  61. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/model/dac.py +400 -0
  62. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/model/discriminator.py +228 -0
  63. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/model/encodec.py +320 -0
  64. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/nn/__init__.py +3 -0
  65. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/nn/layers.py +33 -0
  66. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/nn/loss.py +368 -0
  67. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/nn/quantize.py +339 -0
  68. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/utils/__init__.py +123 -0
  69. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/utils/decode.py +95 -0
  70. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/dac/utils/encode.py +94 -0
  71. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/hf_utils.py +12 -0
  72. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/alias_free_torch/__init__.py +5 -0
  73. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/alias_free_torch/act.py +29 -0
  74. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/alias_free_torch/filter.py +96 -0
  75. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/alias_free_torch/resample.py +57 -0
  76. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/audio.py +82 -0
  77. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/activations.py +120 -0
  78. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/alias_free_activation/cuda/__init__.py +0 -0
  79. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/alias_free_activation/cuda/activation1d.py +77 -0
  80. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/alias_free_activation/cuda/load.py +86 -0
  81. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/alias_free_activation/torch/__init__.py +6 -0
  82. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/alias_free_activation/torch/act.py +30 -0
  83. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/alias_free_activation/torch/filter.py +101 -0
  84. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/alias_free_activation/torch/resample.py +58 -0
  85. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/bigvgan.py +492 -0
  86. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/config.json +63 -0
  87. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/env.py +18 -0
  88. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/meldataset.py +354 -0
  89. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/bigvgan/utils.py +99 -0
  90. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/campplus/DTDNN.py +115 -0
  91. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/campplus/classifier.py +70 -0
  92. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/campplus/layers.py +253 -0
  93. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/commons.py +643 -0
  94. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/diffusion_transformer.py +257 -0
  95. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/encodec.py +292 -0
  96. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/flow_matching.py +186 -0
  97. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/gpt_fast/generate.py +436 -0
  98. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/gpt_fast/model.py +360 -0
  99. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/gpt_fast/quantize.py +622 -0
  100. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/hifigan/f0_predictor.py +55 -0
  101. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/hifigan/generator.py +454 -0
  102. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/layers.py +354 -0
  103. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/length_regulator.py +141 -0
  104. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/__init__.py +0 -0
  105. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/api.py +186 -0
  106. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/attentions.py +465 -0
  107. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/checkpoints_v2/converter/config.json +57 -0
  108. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/commons.py +160 -0
  109. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/mel_processing.py +183 -0
  110. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/models.py +499 -0
  111. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/modules.py +598 -0
  112. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/openvoice_app.py +275 -0
  113. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/se_extractor.py +153 -0
  114. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/transforms.py +209 -0
  115. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/openvoice/utils.py +194 -0
  116. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/quantize.py +229 -0
  117. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/rmvpe.py +631 -0
  118. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/vocos/__init__.py +4 -0
  119. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/vocos/heads.py +164 -0
  120. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/vocos/helpers.py +71 -0
  121. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/vocos/loss.py +114 -0
  122. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/vocos/models.py +118 -0
  123. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/vocos/modules.py +213 -0
  124. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/vocos/pretrained.py +51 -0
  125. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/vocos/spectral_ops.py +192 -0
  126. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/modules/wavenet.py +174 -0
  127. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/optimizers.py +96 -0
  128. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/s2mel/wav2vecbert_extract.py +148 -0
  129. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/__init__.py +0 -0
  130. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/arch_util.py +120 -0
  131. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/checkpoint.py +34 -0
  132. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/common.py +122 -0
  133. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/feature_extractors.py +50 -0
  134. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/front.py +718 -0
  135. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/__init__.py +0 -0
  136. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/amphion_codec/codec.py +427 -0
  137. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/amphion_codec/quantize/__init__.py +11 -0
  138. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/amphion_codec/quantize/factorized_vector_quantize.py +150 -0
  139. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/amphion_codec/quantize/lookup_free_quantize.py +77 -0
  140. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/amphion_codec/quantize/residual_vq.py +177 -0
  141. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/amphion_codec/quantize/vector_quantize.py +401 -0
  142. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/amphion_codec/vocos.py +881 -0
  143. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/codec_dataset.py +264 -0
  144. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/codec_inference.py +515 -0
  145. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/codec_sampler.py +126 -0
  146. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/codec_trainer.py +166 -0
  147. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/__init__.py +0 -0
  148. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/alias_free_torch/__init__.py +5 -0
  149. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/alias_free_torch/act.py +29 -0
  150. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/alias_free_torch/filter.py +96 -0
  151. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/alias_free_torch/resample.py +57 -0
  152. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/facodec_dataset.py +98 -0
  153. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/facodec_inference.py +137 -0
  154. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/facodec_trainer.py +776 -0
  155. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/JDC/__init__.py +1 -0
  156. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/JDC/model.py +219 -0
  157. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/attentions.py +437 -0
  158. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/commons.py +331 -0
  159. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/gradient_reversal.py +35 -0
  160. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/layers.py +460 -0
  161. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/quantize.py +741 -0
  162. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/style_encoder.py +110 -0
  163. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/modules/wavenet.py +224 -0
  164. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/facodec/optimizer.py +104 -0
  165. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/kmeans/repcodec_model.py +210 -0
  166. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/kmeans/vocos.py +850 -0
  167. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/melvqgan/melspec.py +108 -0
  168. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/README.md +216 -0
  169. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/__init__.py +6 -0
  170. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/alias_free_torch/__init__.py +5 -0
  171. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/alias_free_torch/act.py +29 -0
  172. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/alias_free_torch/filter.py +96 -0
  173. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/alias_free_torch/resample.py +57 -0
  174. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/facodec.py +1222 -0
  175. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/gradient_reversal.py +35 -0
  176. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/melspec.py +102 -0
  177. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/quantize/__init__.py +7 -0
  178. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/quantize/fvq.py +116 -0
  179. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/quantize/rvq.py +87 -0
  180. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/ns3_codec/transformer.py +234 -0
  181. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/model.py +184 -0
  182. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/__init__.py +27 -0
  183. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/conv.py +346 -0
  184. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/lstm.py +46 -0
  185. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/norm.py +37 -0
  186. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/quantization/__init__.py +14 -0
  187. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/quantization/ac.py +317 -0
  188. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/quantization/core_vq.py +388 -0
  189. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/quantization/distrib.py +135 -0
  190. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/quantization/vq.py +125 -0
  191. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/speechtokenizer/modules/seanet.py +414 -0
  192. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/codec/vevo/vevo_repcodec.py +592 -0
  193. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/tts/maskgct/llama_nar.py +650 -0
  194. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct/models/tts/maskgct/maskgct_s2a.py +503 -0
  195. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/maskgct_utils.py +259 -0
  196. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/text_utils.py +41 -0
  197. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/typical_sampling.py +30 -0
  198. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/utils.py +93 -0
  199. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/webui_utils.py +42 -0
  200. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/utils/xtransformers.py +1247 -0
  201. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/vqvae/__init__.py +0 -0
  202. card_framework-1.0.1/src/card_framework/_vendor/index_tts/indextts/vqvae/xtts_dvae.py +395 -0
  203. card_framework-1.0.1/src/card_framework/_vendor/index_tts/pyproject.toml +117 -0
  204. card_framework-1.0.1/src/card_framework/_vendor/index_tts/tests/cases.jsonl +9 -0
  205. card_framework-1.0.1/src/card_framework/_vendor/index_tts/tests/padding_test.py +99 -0
  206. card_framework-1.0.1/src/card_framework/_vendor/index_tts/tests/regression_test.py +42 -0
  207. card_framework-1.0.1/src/card_framework/_vendor/index_tts/tools/gpu_check.py +85 -0
  208. card_framework-1.0.1/src/card_framework/_vendor/index_tts/tools/i18n/i18n.py +36 -0
  209. card_framework-1.0.1/src/card_framework/_vendor/index_tts/tools/i18n/locale/en_US.json +65 -0
  210. card_framework-1.0.1/src/card_framework/_vendor/index_tts/tools/i18n/locale/zh_CN.json +47 -0
  211. card_framework-1.0.1/src/card_framework/_vendor/index_tts/tools/i18n/scan_i18n.py +131 -0
  212. card_framework-1.0.1/src/card_framework/_vendor/index_tts/uv.lock +3876 -0
  213. card_framework-1.0.1/src/card_framework/_vendor/index_tts/webui.py +557 -0
  214. card_framework-1.0.1/src/card_framework/agents/__init__.py +2 -0
  215. card_framework-1.0.1/src/card_framework/agents/base.py +486 -0
  216. card_framework-1.0.1/src/card_framework/agents/client.py +260 -0
  217. card_framework-1.0.1/src/card_framework/agents/corrector.py +360 -0
  218. card_framework-1.0.1/src/card_framework/agents/critic.py +386 -0
  219. card_framework-1.0.1/src/card_framework/agents/dtos.py +179 -0
  220. card_framework-1.0.1/src/card_framework/agents/ground_truth_creator.py +500 -0
  221. card_framework-1.0.1/src/card_framework/agents/health.py +177 -0
  222. card_framework-1.0.1/src/card_framework/agents/loop_context.py +991 -0
  223. card_framework-1.0.1/src/card_framework/agents/message_registry.py +250 -0
  224. card_framework-1.0.1/src/card_framework/agents/parsers.py +325 -0
  225. card_framework-1.0.1/src/card_framework/agents/qa_evaluator.py +1140 -0
  226. card_framework-1.0.1/src/card_framework/agents/retrieval.py +76 -0
  227. card_framework-1.0.1/src/card_framework/agents/summarizer.py +530 -0
  228. card_framework-1.0.1/src/card_framework/agents/summarizer_loop_controller.py +129 -0
  229. card_framework-1.0.1/src/card_framework/agents/summarizer_tool_dispatcher.py +587 -0
  230. card_framework-1.0.1/src/card_framework/agents/tool_call_utils.py +45 -0
  231. card_framework-1.0.1/src/card_framework/agents/tool_handlers.py +738 -0
  232. card_framework-1.0.1/src/card_framework/agents/utils.py +100 -0
  233. card_framework-1.0.1/src/card_framework/api.py +762 -0
  234. card_framework-1.0.1/src/card_framework/audio_pipeline/__init__.py +27 -0
  235. card_framework-1.0.1/src/card_framework/audio_pipeline/alignment.py +114 -0
  236. card_framework-1.0.1/src/card_framework/audio_pipeline/calibration.py +696 -0
  237. card_framework-1.0.1/src/card_framework/audio_pipeline/config.py +15 -0
  238. card_framework-1.0.1/src/card_framework/audio_pipeline/contracts.py +195 -0
  239. card_framework-1.0.1/src/card_framework/audio_pipeline/errors.py +21 -0
  240. card_framework-1.0.1/src/card_framework/audio_pipeline/eta.py +769 -0
  241. card_framework-1.0.1/src/card_framework/audio_pipeline/factory.py +649 -0
  242. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/__init__.py +16 -0
  243. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/ctc_forced_aligner_gateway.py +141 -0
  244. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/demucs_gateway.py +151 -0
  245. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/diarization_common.py +120 -0
  246. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/fallback_gateways.py +71 -0
  247. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/fallback_voice_clone_gateway.py +57 -0
  248. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/faster_whisper_gateway.py +265 -0
  249. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/indextts_voice_clone_gateway.py +817 -0
  250. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/nemo_diarizer_gateway.py +284 -0
  251. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/nemo_msdd_infer_telephonic.yaml +67 -0
  252. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/pyannote_diarizer_gateway.py +192 -0
  253. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/sortformer_diarizer_gateway.py +263 -0
  254. card_framework-1.0.1/src/card_framework/audio_pipeline/gateways/speaker_sample_gateway.py +186 -0
  255. card_framework-1.0.1/src/card_framework/audio_pipeline/gpu_heartbeat.py +613 -0
  256. card_framework-1.0.1/src/card_framework/audio_pipeline/interjector.py +1146 -0
  257. card_framework-1.0.1/src/card_framework/audio_pipeline/io.py +69 -0
  258. card_framework-1.0.1/src/card_framework/audio_pipeline/live_draft_voice_clone.py +580 -0
  259. card_framework-1.0.1/src/card_framework/audio_pipeline/orchestrator.py +508 -0
  260. card_framework-1.0.1/src/card_framework/audio_pipeline/runners/indextts_infer_runner.py +65 -0
  261. card_framework-1.0.1/src/card_framework/audio_pipeline/runners/indextts_persistent_runner.py +241 -0
  262. card_framework-1.0.1/src/card_framework/audio_pipeline/runtime.py +99 -0
  263. card_framework-1.0.1/src/card_framework/audio_pipeline/speaker_samples.py +722 -0
  264. card_framework-1.0.1/src/card_framework/audio_pipeline/voice_clone_contracts.py +101 -0
  265. card_framework-1.0.1/src/card_framework/audio_pipeline/voice_clone_orchestrator.py +465 -0
  266. card_framework-1.0.1/src/card_framework/audio_pipeline/word_speaker_alignment.py +396 -0
  267. card_framework-1.0.1/src/card_framework/benchmark/README.md +80 -0
  268. card_framework-1.0.1/src/card_framework/benchmark/__init__.py +1 -0
  269. card_framework-1.0.1/src/card_framework/benchmark/artifacts.py +107 -0
  270. card_framework-1.0.1/src/card_framework/benchmark/datasets.py +266 -0
  271. card_framework-1.0.1/src/card_framework/benchmark/diarization.py +742 -0
  272. card_framework-1.0.1/src/card_framework/benchmark/diarization_datasets.py +271 -0
  273. card_framework-1.0.1/src/card_framework/benchmark/diarization_types.py +74 -0
  274. card_framework-1.0.1/src/card_framework/benchmark/instrumentation.py +74 -0
  275. card_framework-1.0.1/src/card_framework/benchmark/manifests/benchmark_v1.json +19 -0
  276. card_framework-1.0.1/src/card_framework/benchmark/manifests/diarization_ami_test.json +218 -0
  277. card_framework-1.0.1/src/card_framework/benchmark/manifests/diarization_manifest.example.json +16 -0
  278. card_framework-1.0.1/src/card_framework/benchmark/matrix.py +268 -0
  279. card_framework-1.0.1/src/card_framework/benchmark/metrics.py +157 -0
  280. card_framework-1.0.1/src/card_framework/benchmark/mrcr.py +317 -0
  281. card_framework-1.0.1/src/card_framework/benchmark/provider_profiles.yaml +69 -0
  282. card_framework-1.0.1/src/card_framework/benchmark/qa.py +1046 -0
  283. card_framework-1.0.1/src/card_framework/benchmark/qa_config.yaml +42 -0
  284. card_framework-1.0.1/src/card_framework/benchmark/qa_contracts.py +213 -0
  285. card_framework-1.0.1/src/card_framework/benchmark/qa_evaluator_runner.py +306 -0
  286. card_framework-1.0.1/src/card_framework/benchmark/qa_input_guard.py +188 -0
  287. card_framework-1.0.1/src/card_framework/benchmark/qa_settings.py +338 -0
  288. card_framework-1.0.1/src/card_framework/benchmark/reference_free/__init__.py +1 -0
  289. card_framework-1.0.1/src/card_framework/benchmark/reference_free/alignscore_runner.py +215 -0
  290. card_framework-1.0.1/src/card_framework/benchmark/reference_free/contracts.py +182 -0
  291. card_framework-1.0.1/src/card_framework/benchmark/reference_free/judge_runner.py +355 -0
  292. card_framework-1.0.1/src/card_framework/benchmark/reference_free/pipeline.py +92 -0
  293. card_framework-1.0.1/src/card_framework/benchmark/reference_free/plugins.py +52 -0
  294. card_framework-1.0.1/src/card_framework/benchmark/rubrics/default_summarization_rubric.json +31 -0
  295. card_framework-1.0.1/src/card_framework/benchmark/run.py +961 -0
  296. card_framework-1.0.1/src/card_framework/benchmark/somebody.py +22 -0
  297. card_framework-1.0.1/src/card_framework/benchmark/test_ui.py +21 -0
  298. card_framework-1.0.1/src/card_framework/benchmark/types.py +143 -0
  299. card_framework-1.0.1/src/card_framework/cli/__init__.py +2 -0
  300. card_framework-1.0.1/src/card_framework/cli/calibrate.py +180 -0
  301. card_framework-1.0.1/src/card_framework/cli/eval.py +30 -0
  302. card_framework-1.0.1/src/card_framework/cli/main.py +1668 -0
  303. card_framework-1.0.1/src/card_framework/cli/run_summary_matrix.py +807 -0
  304. card_framework-1.0.1/src/card_framework/cli/setup_and_run.py +1859 -0
  305. card_framework-1.0.1/src/card_framework/cli/ui.py +520 -0
  306. card_framework-1.0.1/src/card_framework/cli/ui_cli.py +28 -0
  307. card_framework-1.0.1/src/card_framework/config/config.yaml +335 -0
  308. card_framework-1.0.1/src/card_framework/orchestration/__init__.py +25 -0
  309. card_framework-1.0.1/src/card_framework/orchestration/stage_orchestrator.py +617 -0
  310. card_framework-1.0.1/src/card_framework/orchestration/transcript.py +113 -0
  311. card_framework-1.0.1/src/card_framework/prompts/__init__.py +2 -0
  312. card_framework-1.0.1/src/card_framework/prompts/templates/corrector_system.jinja2 +26 -0
  313. card_framework-1.0.1/src/card_framework/prompts/templates/corrector_user.jinja2 +19 -0
  314. card_framework-1.0.1/src/card_framework/prompts/templates/critic_system.jinja2 +84 -0
  315. card_framework-1.0.1/src/card_framework/prompts/templates/critic_user.jinja2 +3 -0
  316. card_framework-1.0.1/src/card_framework/prompts/templates/interjector_system.jinja2 +32 -0
  317. card_framework-1.0.1/src/card_framework/prompts/templates/interjector_user.jinja2 +11 -0
  318. card_framework-1.0.1/src/card_framework/prompts/templates/qa_evaluator_system.jinja2 +46 -0
  319. card_framework-1.0.1/src/card_framework/prompts/templates/qa_evaluator_user.jinja2 +32 -0
  320. card_framework-1.0.1/src/card_framework/prompts/templates/qa_ground_truth_system.jinja2 +54 -0
  321. card_framework-1.0.1/src/card_framework/prompts/templates/qa_ground_truth_user.jinja2 +17 -0
  322. card_framework-1.0.1/src/card_framework/prompts/templates/query_generation_system.jinja2 +20 -0
  323. card_framework-1.0.1/src/card_framework/prompts/templates/summarizer_revise.jinja2 +86 -0
  324. card_framework-1.0.1/src/card_framework/prompts/templates/summarizer_system.jinja2 +121 -0
  325. card_framework-1.0.1/src/card_framework/prompts/templates/summarizer_user.jinja2 +10 -0
  326. card_framework-1.0.1/src/card_framework/providers/__init__.py +34 -0
  327. card_framework-1.0.1/src/card_framework/providers/deepseek_provider.py +315 -0
  328. card_framework-1.0.1/src/card_framework/providers/glm_provider.py +216 -0
  329. card_framework-1.0.1/src/card_framework/providers/google_genai_provider.py +142 -0
  330. card_framework-1.0.1/src/card_framework/providers/huggingface_provider.py +113 -0
  331. card_framework-1.0.1/src/card_framework/providers/logging_provider.py +260 -0
  332. card_framework-1.0.1/src/card_framework/providers/nanbeige_provider.py +114 -0
  333. card_framework-1.0.1/src/card_framework/providers/null_provider.py +34 -0
  334. card_framework-1.0.1/src/card_framework/providers/response_callbacks.py +119 -0
  335. card_framework-1.0.1/src/card_framework/providers/sentence_transformer_provider.py +84 -0
  336. card_framework-1.0.1/src/card_framework/providers/transformers_provider.py +203 -0
  337. card_framework-1.0.1/src/card_framework/providers/vllm_provider.py +300 -0
  338. card_framework-1.0.1/src/card_framework/retrieval/__init__.py +2 -0
  339. card_framework-1.0.1/src/card_framework/retrieval/embeddings.py +112 -0
  340. card_framework-1.0.1/src/card_framework/runtime/__init__.py +2 -0
  341. card_framework-1.0.1/src/card_framework/runtime/bootstrap.py +361 -0
  342. card_framework-1.0.1/src/card_framework/runtime/loop_orchestrator.py +579 -0
  343. card_framework-1.0.1/src/card_framework/runtime/pipeline_plan.py +132 -0
  344. card_framework-1.0.1/src/card_framework/shared/__init__.py +2 -0
  345. card_framework-1.0.1/src/card_framework/shared/events.py +89 -0
  346. card_framework-1.0.1/src/card_framework/shared/llm_provider.py +274 -0
  347. card_framework-1.0.1/src/card_framework/shared/logger_utils.py +197 -0
  348. card_framework-1.0.1/src/card_framework/shared/paths.py +89 -0
  349. card_framework-1.0.1/src/card_framework/shared/prompt_manager.py +39 -0
  350. card_framework-1.0.1/src/card_framework/shared/runtime_layout.py +55 -0
  351. card_framework-1.0.1/src/card_framework/shared/summary_output.py +14 -0
  352. card_framework-1.0.1/src/card_framework/shared/summary_xml.py +73 -0
  353. card_framework-1.0.1/src/card_framework.egg-info/PKG-INFO +344 -0
  354. card_framework-1.0.1/src/card_framework.egg-info/SOURCES.txt +356 -0
  355. card_framework-1.0.1/src/card_framework.egg-info/dependency_links.txt +1 -0
  356. card_framework-1.0.1/src/card_framework.egg-info/entry_points.txt +10 -0
  357. card_framework-1.0.1/src/card_framework.egg-info/requires.txt +33 -0
  358. card_framework-1.0.1/src/card_framework.egg-info/top_level.txt +1 -0
@@ -0,0 +1,137 @@
1
+ # CARD Framework License
2
+
3
+ CARD Framework is made available under the PolyForm Noncommercial License
4
+ 1.0.0. You may use, copy, modify, and distribute this software for
5
+ noncommercial purposes. Commercial use is not permitted unless you obtain
6
+ separate written permission from the licensors.
7
+
8
+ Required Notice: Copyright 2026 Rei Dennis Agustin, Sean Luigi P. Caranzo, Johnbell R. De Leon, and Christian Klein C. Ramos.
9
+
10
+ # PolyForm Noncommercial License 1.0.0
11
+
12
+ ## Acceptance
13
+
14
+ In order to get any license under these terms, you must agree
15
+ to them as both strict obligations and conditions to all
16
+ your licenses.
17
+
18
+ ## Copyright License
19
+
20
+ The licensor grants you a copyright license for the
21
+ software to do everything you might do with the software
22
+ that would otherwise infringe the licensor's copyright
23
+ in it for any permitted purpose. However, you may
24
+ only distribute the software according to the Distribution
25
+ License and make changes or new works based on the software
26
+ according to the Changes and New Works License.
27
+
28
+ ## Distribution License
29
+
30
+ The licensor grants you an additional copyright license
31
+ to distribute copies of the software. Your license
32
+ to distribute covers distributing the software with
33
+ changes and new works permitted by the Changes and New Works
34
+ License.
35
+
36
+ ## Notices
37
+
38
+ You must ensure that anyone who gets a copy of any part of
39
+ the software from you also gets a copy of these terms, as well
40
+ as copies of any plain-text lines beginning with
41
+ `Required Notice:` that the licensor provided with the
42
+ software. For this repository, the notice is:
43
+
44
+ > Required Notice: Copyright 2026 Rei Dennis Agustin, Sean Luigi P. Caranzo, Johnbell R. De Leon, and Christian Klein C. Ramos.
45
+
46
+ ## Changes and New Works License
47
+
48
+ The licensor grants you an additional copyright license to
49
+ make changes and new works based on the software for any
50
+ permitted purpose.
51
+
52
+ ## Patent License
53
+
54
+ The licensor grants you a patent license for the software that
55
+ covers patent claims the licensor can license, or becomes able
56
+ to license, that you would infringe by using the software.
57
+
58
+ ## Noncommercial Purposes
59
+
60
+ Any noncommercial purpose is a permitted purpose.
61
+
62
+ ## Personal Uses
63
+
64
+ Personal use for research, experiment, and testing for
65
+ the benefit of public knowledge, personal study, private
66
+ entertainment, hobby projects, amateur pursuits, or religious
67
+ observance, without any anticipated commercial application,
68
+ is use for a permitted purpose.
69
+
70
+ ## Noncommercial Organizations
71
+
72
+ Use by any charitable organization, educational institution,
73
+ public research organization, public safety or health
74
+ organization, environmental protection organization,
75
+ or government institution is use for a permitted purpose
76
+ regardless of the source of funding or obligations resulting
77
+ from the funding.
78
+
79
+ ## Fair Use
80
+
81
+ You may have "fair use" rights for the software under the
82
+ law. These terms do not limit them.
83
+
84
+ ## No Other Rights
85
+
86
+ These terms do not allow you to sublicense or transfer any of
87
+ your licenses to anyone else, or prevent the licensor from
88
+ granting licenses to anyone else. These terms do not imply
89
+ any other licenses.
90
+
91
+ ## Patent Defense
92
+
93
+ If you make any written claim that the software infringes or
94
+ contributes to infringement of any patent, your patent license
95
+ for the software granted under these terms ends immediately. If
96
+ your company makes such a claim, your patent license ends
97
+ immediately for work on behalf of your company.
98
+
99
+ ## Violations
100
+
101
+ The first time you are notified in writing that you have
102
+ violated any of these terms, or done anything with the software
103
+ not covered by your licenses, your licenses can nonetheless
104
+ continue if you come into full compliance with these terms,
105
+ and take practical steps to correct past violations, within
106
+ 32 days of receiving notice. Otherwise, all your licenses
107
+ end immediately.
108
+
109
+ ## No Liability
110
+
111
+ ***As far as the law allows, the software comes as is, without
112
+ any warranty or condition, and the licensor will not be liable
113
+ to you for any damages arising out of these terms or the use
114
+ or nature of the software, under any kind of legal claim.***
115
+
116
+ ## Definitions
117
+
118
+ The **licensor** is the individual or entity offering these
119
+ terms, and the **software** is the software the licensor makes
120
+ available under these terms.
121
+
122
+ **You** refers to the individual or entity agreeing to these
123
+ terms.
124
+
125
+ **Your company** is any legal entity, sole proprietorship,
126
+ or other kind of organization that you work for, plus all
127
+ organizations that have control over, are under the control of,
128
+ or are under common control with that organization. **Control**
129
+ means ownership of substantially all the assets of an entity,
130
+ or the power to direct its management and policies by vote,
131
+ contract, or otherwise. Control can be direct or indirect.
132
+
133
+ **Your licenses** are all the licenses granted to you for the
134
+ software under these terms.
135
+
136
+ **Use** means anything you do with the software requiring one
137
+ of your licenses.
@@ -0,0 +1,344 @@
1
+ Metadata-Version: 2.4
2
+ Name: card-framework
3
+ Version: 1.0.1
4
+ Summary: Constraint-aware audio resynthesis and distillation pipeline.
5
+ License-Expression: LicenseRef-PolyForm-Noncommercial-1.0.0
6
+ Project-URL: Homepage, https://github.com/Lolfaceftw/card-framework
7
+ Project-URL: Repository, https://github.com/Lolfaceftw/card-framework
8
+ Project-URL: Issues, https://github.com/Lolfaceftw/card-framework/issues
9
+ Classifier: Operating System :: Microsoft :: Windows
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.12
12
+ Requires-Python: >=3.12
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE.md
15
+ Requires-Dist: openai
16
+ Requires-Dist: requests
17
+ Requires-Dist: a2a-sdk[all]
18
+ Requires-Dist: httpx
19
+ Requires-Dist: uvicorn
20
+ Requires-Dist: starlette
21
+ Requires-Dist: sentence-transformers>=2.7.0
22
+ Requires-Dist: torch>=2.0.0
23
+ Requires-Dist: numpy
24
+ Requires-Dist: accelerate>=1.12.0
25
+ Requires-Dist: hydra-core>=1.3.0
26
+ Requires-Dist: omegaconf>=2.3.0
27
+ Requires-Dist: rich>=14.3.3
28
+ Requires-Dist: google-genai>=1.64.0
29
+ Requires-Dist: zai-sdk>=0.2.2
30
+ Requires-Dist: jinja2
31
+ Requires-Dist: datasets>=4.5.0
32
+ Requires-Dist: huggingface-hub>=0.34.0
33
+ Requires-Dist: hf-transfer>=0.1.9
34
+ Requires-Dist: pydantic>=2.12.5
35
+ Requires-Dist: platformdirs>=4.3.6
36
+ Requires-Dist: demucs>=4.0.1
37
+ Requires-Dist: faster-whisper>=1.1.1
38
+ Requires-Dist: nemo-toolkit[asr]>=2.4.0
39
+ Requires-Dist: torchaudio>=2.0.0
40
+ Requires-Dist: soundfile>=0.13.1
41
+ Requires-Dist: torchcodec>=0.10.0
42
+ Requires-Dist: nltk>=3.8.1
43
+ Requires-Dist: ctc-forced-aligner
44
+ Requires-Dist: deepmultilingualpunctuation
45
+ Requires-Dist: tiktoken
46
+ Requires-Dist: textual
47
+ Requires-Dist: unidecode
48
+ Dynamic: license-file
49
+
50
+ # CARD Framework
51
+
52
+ This repository is the current implementation of **CARD: Constraint-aware Audio
53
+ Resynthesis and Distillation**, the project described in
54
+ [`EEE_196_CARD_UCL.md`](./EEE_196_CARD_UCL.md).
55
+
56
+ The paper is the conceptual and academic baseline. The codebase, however, has
57
+ already moved beyond parts of the manuscript's original implementation plan.
58
+ This README therefore prioritizes **what the repository actually does now**.
59
+ When the paper and the current code diverge, treat the code, config, and
60
+ `coder_docs` as the source of truth for day-to-day development.
61
+
62
+ ## Paper Metadata
63
+
64
+ **Authors**
65
+
66
+ - Rei Dennis Agustin, 2022-03027, BS Electronics Engineering
67
+ - Sean Luigi P. Caranzo, 2022-05398, BS Computer Engineering
68
+ - Johnbell R. De Leon, 2021-01437, BS Computer Engineering
69
+ - Christian Klein C. Ramos, 2022-03126, BS Electronics Engineering
70
+
71
+ **Research Adviser**
72
+
73
+ - Rowel D. Atienza
74
+
75
+ **Affiliation**
76
+
77
+ - University of the Philippines Diliman
78
+ - December 2025
79
+
80
+ ## Abstract
81
+
82
+ CARD addresses the long-form podcast consumption bottleneck by generating a
83
+ shorter conversational audio output that retains speaker identity and
84
+ prosodic character instead of collapsing everything into plain text. The
85
+ project combines transcript generation, speaker-aware summarization,
86
+ voice-cloned resynthesis, and conversational overlap handling so a
87
+ multi-speaker recording can be compressed toward a user-defined duration
88
+ without discarding the listening experience that makes the original medium
89
+ valuable.
90
+
91
+ ## High-Level Architecture
92
+
93
+ ```mermaid
94
+ flowchart LR
95
+ A[Source Audio] --> B[Stage 1<br/>Audio Ingestion]
96
+ B --> C[Transcript JSON<br/>Speaker Metadata]
97
+ C --> D[Stage 2<br/>Summarizer + Critic Loop]
98
+ D --> E[Summary XML<br/>Speaker-Tagged Turns]
99
+ E --> F[Stage 3<br/>Voice Clone Resynthesis]
100
+ F --> G[Cloned Summary Audio]
101
+ G --> H[Stage 4<br/>Interjector / Backchannels]
102
+ H --> I[Final Conversational Audio]
103
+
104
+ C -. Optional evaluation input .-> J[Benchmarks]
105
+ E -. Optional evaluation input .-> J
106
+
107
+ K[Hydra Config + Provider Adapters] -. controls .-> B
108
+ K -. controls .-> D
109
+ K -. controls .-> F
110
+ K -. controls .-> H
111
+ ```
112
+
113
+ ## What CARD Does
114
+
115
+ CARD is a multi-stage pipeline for converting long-form multi-speaker audio into
116
+ a shorter, speaker-aware, resynthesized conversational output.
117
+
118
+ At a high level, the repository currently supports:
119
+
120
+ - **Stage 1: Audio ingestion and transcript generation**
121
+ - Source separation
122
+ - ASR, diarization, and alignment
123
+ - Transcript JSON generation with speaker metadata
124
+ - **Stage 2: Constraint-aware summarization**
125
+ - Summarizer and critic agent loop
126
+ - Duration-first summary generation with speaker-tagged XML output
127
+ - Retrieval-backed or full-transcript summarization paths
128
+ - **Stage 3: Voice cloning and resynthesis**
129
+ - Speaker sample generation
130
+ - Voice-cloned rendering of summary turns
131
+ - Live-draft voice cloning during summarizer edits
132
+ - **Stage 4: Conversational interjection**
133
+ - Optional overlap and backchannel synthesis on top of the cloned summary
134
+ - **Benchmarking and evaluation**
135
+ - Summarization benchmark workflows
136
+ - Source-grounded QA benchmark workflows
137
+ - Diarization benchmark workflows
138
+
139
+ ## Paper vs. Current Repository
140
+
141
+ [`EEE_196_CARD_UCL.md`](./EEE_196_CARD_UCL.md) explains the original CARD paper,
142
+ problem framing, and proposed module design. The repository now reflects a more
143
+ developed engineering system than that initial write-up.
144
+
145
+ Important differences from the manuscript-level description include:
146
+
147
+ - The repo is now **configuration-driven** through Hydra instead of being tied
148
+ to one fixed experimental path.
149
+ - The runtime is now **duration-first**, centered on `target_seconds` and
150
+ tolerance checks, rather than a simple word-budget-only workflow.
151
+ - The summary output contract is now **speaker-tagged XML**, which feeds the
152
+ downstream voice-clone and interjector stages.
153
+ - The default stage-2/stage-3 flow can use **live-draft voice cloning**, where
154
+ turn audio is rendered during summary editing instead of only after the final
155
+ draft is approved.
156
+ - The repository includes substantial **benchmarking, evaluation, and operator
157
+ tooling** that goes beyond the initial paper narrative.
158
+ - Provider support has expanded: the codebase is organized around adapters and
159
+ config-selected backends rather than a single hardcoded model stack.
160
+
161
+ In short: the paper explains **why CARD exists**; this repository captures
162
+ **how CARD currently works**.
163
+
164
+ ## Repository Layout
165
+
166
+ ```text
167
+ src/card_framework/
168
+ agents/ A2A executors, DTOs, tool loops, client transport
169
+ audio_pipeline/ Audio ingestion, speaker samples, voice cloning, interjector
170
+ benchmark/ Summarization, QA, and diarization benchmarks
171
+ cli/ Runtime, setup, calibration, matrix, and eval entrypoints
172
+ config/ Hydra configuration
173
+ orchestration/ Transcript DTOs and stage orchestration
174
+ prompts/ Jinja2 prompt templates
175
+ providers/ LLM and embedding provider adapters
176
+ retrieval/ Transcript indexing and retrieval
177
+ runtime/ Runtime planning and execution support
178
+ shared/ Shared utilities, events, and logging
179
+ _vendor/index_tts/
180
+ ```
181
+
182
+ Other important locations:
183
+
184
+ - `artifacts/`: generated transcripts, cloned audio, benchmark outputs, and
185
+ other runtime artifacts
186
+ - `checkpoints/`: local model/runtime checkpoints
187
+ - `coder_docs/`: repository-specific architecture, workflow, and maintenance
188
+ guidance
189
+
190
+ ## Common Commands
191
+
192
+ ```bash
193
+ uv sync --dev
194
+ uv run python -m card_framework.cli.main --help
195
+ uv run python -m card_framework.cli.setup_and_run --help
196
+ uv run python -m card_framework.cli.calibrate --help
197
+ uv run python -m card_framework.cli.run_summary_matrix --help
198
+ uv run python -m card_framework.benchmark.run --help
199
+ uv run python -m card_framework.benchmark.diarization --help
200
+ uv run python -m card_framework.benchmark.qa --help
201
+ uv run ruff check .
202
+ uv run pytest
203
+ ```
204
+
205
+ Common execution entrypoints:
206
+
207
+ ```bash
208
+ uv run python -m card_framework.cli.setup_and_run --audio-path <path-to-audio>
209
+ uv run python -m card_framework.cli.main
210
+ uv run python -m card_framework.cli.calibrate
211
+ ```
212
+
213
+ ## Package Usage
214
+
215
+ The repository now exposes a library entrypoint for installed-package use:
216
+
217
+ ```bash
218
+ pip install card-framework
219
+ ```
220
+
221
+ ```python
222
+ from card_framework import infer
223
+
224
+ result = infer(
225
+ "audio.wav",
226
+ "outputs/run_001",
227
+ 300,
228
+ device="cpu",
229
+ vllm_url="http://localhost:8000/v1",
230
+ )
231
+ print(result.summary_xml_path)
232
+ print(result.final_audio_path)
233
+ ```
234
+
235
+ `infer(audio_wav, output_dir, target_duration_seconds, *, device, ...)` runs
236
+ the full stage-1 to stage-4 pipeline and returns an `InferenceResult` with the
237
+ main emitted artifact paths. `target_duration_seconds` is required for every
238
+ call and overrides any duration target declared in the loaded config file.
239
+ `device` is also required and must be either `cpu` or `cuda`. `vllm_url` is the
240
+ first-class packaged-runtime override for OpenAI-compatible endpoints, and it
241
+ forces the shared summarizer, critic, and interjector LLM path onto the
242
+ provided vLLM-compatible server for that call. The call writes into `output_dir`
243
+ using this high-level layout:
244
+
245
+ ```text
246
+ outputs/run_001/
247
+ transcript.json
248
+ summary.xml
249
+ agent_interactions.log
250
+ audio_stage/
251
+ voice_clone/
252
+ interjector/
253
+ ```
254
+
255
+ Installed-package runtime notes:
256
+
257
+ - Supported public packaged-runtime platform as of March 9, 2026: Windows only.
258
+ macOS and Linux are not yet validated for the public `pip install
259
+ card-framework` whole-pipeline path, and `infer(...)` now fails fast on those
260
+ platforms instead of attempting a partial run.
261
+ - `CARD_FRAMEWORK_CONFIG`: optional path to a full YAML config file when you
262
+ need to override the default packaged provider/runtime config for `infer(...)`.
263
+ - `CARD_FRAMEWORK_HOME`: optional writable runtime home used for extracted
264
+ IndexTTS assets, checkpoints, and bootstrap state. If unset, the package uses
265
+ the platform-appropriate user data directory.
266
+ - `CARD_FRAMEWORK_VLLM_URL`: optional environment-variable equivalent of the
267
+ `vllm_url=` argument.
268
+ - `CARD_FRAMEWORK_VLLM_API_KEY`: optional environment-variable equivalent of
269
+ the `vllm_api_key=` argument. If omitted for vLLM, the packaged runtime uses
270
+ `EMPTY`, which matches the common local keyless vLLM setup.
271
+ - If you choose `device="cuda"`, the packaged runtime currently supports only
272
+ CUDA 12.6. `infer(...)` now validates that the installed PyTorch build reports
273
+ CUDA 12.6 before it proceeds.
274
+ - The packaged default is now vLLM-first. If the effective config selects
275
+ another provider, `infer(...)` resolves required credentials before it starts
276
+ the subprocess runtime:
277
+ - interactive terminals: `infer(...)` securely prompts for missing API keys
278
+ or access tokens without echoing them and without placing them on the
279
+ subprocess command line
280
+ - non-interactive runs: `infer(...)` fails fast with an actionable error that
281
+ names the missing config field and the supported environment variable
282
+ - Supported credential environment variables for the packaged path include
283
+ `DEEPSEEK_API_KEY`, `GEMINI_API_KEY` or `GOOGLE_API_KEY`, `ZAI_API_KEY`,
284
+ `HUGGINGFACE_TOKEN` or `HF_TOKEN`, and the configured
285
+ `audio.diarization.pyannote.auth_token_env` value.
286
+ - Whole-pipeline inference still requires external tools such as `ffmpeg`.
287
+ When voice cloning or calibration paths are active, the package also expects
288
+ `uv` so it can bootstrap the vendored IndexTTS runtime in the writable
289
+ runtime home on first use.
290
+
291
+ ## Public PyPI Release
292
+
293
+ This repository now includes a GitHub Actions trusted-publishing workflow at
294
+ `.github/workflows/publish-pypi.yml` that publishes tags matching `v*` to PyPI.
295
+
296
+ For the first public release of `card-framework`, use PyPI's **pending
297
+ publisher** flow because the project does not exist on PyPI yet. Configure:
298
+
299
+ - PyPI project name: `card-framework`
300
+ - GitHub owner: `Lolfaceftw`
301
+ - GitHub repository: `card-framework`
302
+ - Workflow filename: `publish-pypi.yml`
303
+ - Environment name: `pypi`
304
+
305
+ Repository-side release steps:
306
+
307
+ 1. Merge the publishing workflow to `main`.
308
+ 2. In GitHub repository settings, create the `pypi` environment.
309
+ 3. In PyPI account settings, add the pending trusted publisher with the fields
310
+ above.
311
+ 4. Tag the release from `main` and push it, for example:
312
+
313
+ ```bash
314
+ git tag -a v0.1.0 -m v0.1.0
315
+ git push origin v0.1.0
316
+ ```
317
+
318
+ 5. After the workflow succeeds, verify the public release:
319
+
320
+ ```bash
321
+ python -m pip install --no-cache-dir card-framework
322
+ python -c "from card_framework import infer; print(infer)"
323
+ ```
324
+
325
+ ## Documentation
326
+
327
+ - [`EEE_196_CARD_UCL.md`](./EEE_196_CARD_UCL.md): the CARD paper and project
328
+ manuscript
329
+ - [`coder_docs/codebase_guide.md`](./coder_docs/codebase_guide.md): current
330
+ architecture, runtime flow, commands, and maintenance expectations
331
+ - [`coder_docs/memory/errors_and_notes.md`](./coder_docs/memory/errors_and_notes.md):
332
+ repository memory for recurring pitfalls and prior fixes
333
+ - [`coder_docs/fault_localization_workflow.md`](./coder_docs/fault_localization_workflow.md):
334
+ bug triage and failing-test workflow
335
+
336
+ If you are changing behavior, prompts, workflows, or commands, start with
337
+ `coder_docs/codebase_guide.md`.
338
+
339
+ ## License
340
+
341
+ This repository is source-available under
342
+ [`LICENSE.md`](./LICENSE.md), using the **PolyForm Noncommercial 1.0.0**
343
+ license. Noncommercial use is allowed; commercial use requires separate
344
+ permission from the licensors.