Spaces:
Sleeping
Sleeping
| import os | |
| ROOT_DIR = r"C:\Users\LENOVO\Desktop\senti_ai" | |
| # 1. Update train_superpacks_ai.py to use correct input dimensions and remove slice constraints | |
| train_script = os.path.join(ROOT_DIR, "scratch", "train_superpacks_ai.py") | |
| with open(train_script, "r", encoding="utf-8") as f: | |
| code = f.read() | |
| # Fix classes input dims | |
| code = code.replace("class TaxComplianceClassifier(nn.Module):\n def __init__(self, input_dim=10, hidden_dim=32):", "class TaxComplianceClassifier(nn.Module):\n def __init__(self, input_dim=11, hidden_dim=32):") | |
| code = code.replace("class InsuranceNeedsAssessor(nn.Module):\n def __init__(self, input_dim=8, hidden_dim=24):", "class InsuranceNeedsAssessor(nn.Module):\n def __init__(self, input_dim=9, hidden_dim=24):") | |
| code = code.replace("class AccountingBookkeepingClassifier(nn.Module):\n def __init__(self, input_dim=8, hidden_dim=24):", "class AccountingBookkeepingClassifier(nn.Module):\n def __init__(self, input_dim=9, hidden_dim=24):") | |
| code = code.replace("class BankingTransactionScorer(nn.Module):\n def __init__(self, input_dim=8, hidden_dim=32):", "class BankingTransactionScorer(nn.Module):\n def __init__(self, input_dim=9, hidden_dim=32):") | |
| code = code.replace("class WealthPortfolioAllocator(nn.Module):\n def __init__(self, input_dim=8, hidden_dim=24):", "class WealthPortfolioAllocator(nn.Module):\n def __init__(self, input_dim=9, hidden_dim=24):") | |
| # Fix training instantiations input dims | |
| code = code.replace("model_tax = TaxComplianceClassifier(input_dim=10)", "model_tax = TaxComplianceClassifier(input_dim=11)") | |
| code = code.replace("model_ins = InsuranceNeedsAssessor(input_dim=8)", "model_ins = InsuranceNeedsAssessor(input_dim=9)") | |
| code = code.replace("model_acc = AccountingBookkeepingClassifier(input_dim=8)", "model_acc = AccountingBookkeepingClassifier(input_dim=9)") | |
| code = code.replace("model_bank = BankingTransactionScorer(input_dim=8)", "model_bank = BankingTransactionScorer(input_dim=9)") | |
| code = code.replace("model_wealth = WealthPortfolioAllocator(input_dim=8)", "model_wealth = WealthPortfolioAllocator(input_dim=9)") | |
| # Remove the slicing [:10] from tax features in training | |
| code = code.replace(" ][:10]\n X_tax.append(feat)", "\n X_tax.append(feat)") | |
| with open(train_script, "w", encoding="utf-8") as f: | |
| f.write(code) | |
| print("Updated train_superpacks_ai.py input dimensions.") | |
| # 2. Update model.py files in superpacks directories | |
| packs = { | |
| "sentitax": {"dim": 11, "cls": "TaxComplianceClassifier"}, | |
| "sentiinsurance": {"dim": 9, "cls": "InsuranceNeedsAssessor"}, | |
| "sentiaccounting": {"dim": 9, "cls": "AccountingBookkeepingClassifier"}, | |
| "sentibanking": {"dim": 9, "cls": "BankingTransactionScorer"}, | |
| "sentiwealth": {"dim": 9, "cls": "WealthPortfolioAllocator"} | |
| } | |
| for name, info in packs.items(): | |
| model_file = os.path.join(ROOT_DIR, name, "model.py") | |
| with open(model_file, "r", encoding="utf-8") as f: | |
| mcode = f.read() | |
| # Replace default input_dim in constructor | |
| mcode = mcode.replace(f"__init__(self, input_dim=10,", f"__init__(self, input_dim={info['dim']},") | |
| mcode = mcode.replace(f"__init__(self, input_dim=8,", f"__init__(self, input_dim={info['dim']},") | |
| with open(model_file, "w", encoding="utf-8") as f: | |
| f.write(mcode) | |
| print(f"Updated {name}/model.py input_dim to {info['dim']}.") | |