def read_global_configuration(config_dict, ignore_undefined=False):
        """Read global-level configuration (accessible to all components and chains)
        Arguments:
            input_config {dict} -- The configuration
            ignore_undefined {boolean} -- Whether to ignore (true) of throw an error (false) on undefined keys
        """
        global_config = GlobalConfig()
        for global_conf_key, comp_conf in config_dict.items():
            if global_conf_key == GlobalConfig.chains_key:
                continue
            comp = [
                g for g in global_component_classes
                if g.conf_key_name == global_conf_key
            ]
            if len(comp) != 1:
                if not ignore_undefined:
                    error(
                        f"Undefined global configuration component: {global_conf_key}",
                        not comp)
                else:
                    continue
                error(
                    f"Multiple global configuration component matches: {global_conf_key}",
                    len(comp) > 1)
            comp = comp[0]
            component_config = comp(comp_conf)
            global_config.add_config_object(global_conf_key, component_config)

        global_config.finalize()
        if global_config.misc.run_id is None:
            global_config.misc.run_id = utils.datetime_str()
        # make directories
        for ddir in (global_config.folders.run, global_config.folders.raw_data,
                     global_config.folders.serialization):
            os.makedirs(ddir, exist_ok=True)
        return global_config
        return out


import argparse
import time
import os
import numpy as np
import torch
import torch.nn as nn
import sys
sys.path.append('../../')
from src.baselines.baseline_data import get_bisk_rnn_data
from src.helper import *
from config.global_config import GlobalConfig

config = GlobalConfig()

#######################################
# Hyper-parameters
#######################################
pad_idx = config.PAD_TOKEN
anc_dim = config.MAX_SCENE_OBJECT_COUNT
#######################################

#######################################
# Device configuration
#######################################
device = 'cuda' if torch.cuda.is_available() else 'cpu'
#######################################

global logger
Ejemplo n.º 3
0
def load_config():
    from django.conf import settings
    from apps.config.models import Config as ModelConfig

    global _has_configed
    if _has_configed:
        return

    if os.environ.get('DIANJING_CONFIG', '') == 'local':
        z_file = os.path.join(settings.BASE_DIR, 'config', 'config.zip')
    else:
        if settings.CONFIG_FILE:
            z_file = settings.CONFIG_FILE
        else:
            c = ModelConfig.get_config()
            if c:
                z_file = c.config.path
            else:
                raise Exception(
                    "No config in db. Should set env: DIANJING_CONFIG=local, or CONFIG_FILE in settings.xml"
                )

    z = zipfile.ZipFile(z_file)
    for fname in z.namelist():
        content = z.open(fname).read()
        if not content:
            continue

        data = json.loads(content)

        if fname == 'global_config.json':
            GlobalConfig.initialize(data)
        elif fname == 'errormsg.json':
            ConfigErrorMessage.initialize(data)

        elif fname == 'first_name.json':
            ConfigFirstName.initialize(data)
        elif fname == 'last_name.json':
            ConfigLastName.initialize(data)

        elif fname == 'item_new.json':
            ConfigItemNew.initialize(data)
        elif fname == 'item_use.json':
            ConfigItemUse.initialize(data)
        elif fname == 'item_merge.json':
            ConfigItemMerge.initialize(data)
        elif fname == 'equipment_new.json':
            ConfigEquipmentNew.initialize(data)
        elif fname == 'equipment_special.json':
            ConfigEquipmentSpecial.initialize(data)
        elif fname == 'equipment_special_generate.json':
            ConfigEquipmentSpecialGenerate.initialize(data)
        elif fname == 'equipment_special_growing_property.json':
            ConfigEquipmentSpecialGrowingProperty.initialize(data)
        elif fname == 'equipment_special_level.json':
            ConfigEquipmentSpecialLevel.initialize(data)
        elif fname == 'equipment_special_score_to_growing.json':
            ConfigEquipmentSpecialScoreToGrowing.initialize(data)

        elif fname == 'staff_new.json':
            ConfigStaffNew.initialize(data)
        elif fname == 'staff_level_new.json':
            ConfigStaffLevelNew.initialize(data)
        elif fname == 'staff_star.json':
            ConfigStaffStar.initialize(data)
        elif fname == 'staff_equip_level_addition.json':
            ConfigStaffEquipmentLevelAddition.initialize(data)
        elif fname == 'staff_equip_quality_addition.json':
            ConfigStaffEquipmentQualityAddition.initialize(data)
        elif fname == 'staff_recruit.json':
            ConfigStaffRecruit.initialize(data)

        elif fname == 'challenge_chapter.json':
            ConfigChapter.initialize(data)
        elif fname == 'challenge_match.json':
            ConfigChallengeMatch.initialize(data)
        elif fname == 'challenge_buy_cost.json':
            ConfigChallengeResetCost.initialize(data)

        elif fname == 'unit_new.json':
            ConfigUnitNew.initialize(data)
        elif fname == 'unit_unlock.json':
            ConfigUnitUnLock.initialize(data)
        elif fname == 'unit_level_addition.json':
            ConfigUnitLevelAddition.initialize(data)
        elif fname == 'unit_step_addition.json':
            ConfigUnitStepAddition.initialize(data)

        elif fname == 'talent_skill.json':
            ConfigTalentSkill.initialize(data)

        elif fname == 'task_condition.json':
            ConfigTaskCondition.initialize(data)
        elif fname == 'task_main.json':
            ConfigTaskMain.initialize(data)
        elif fname == 'task_daily.json':
            ConfigTaskDaily.initialize(data)

        elif fname == 'club_level.json':
            ConfigClubLevel.initialize(data)
        elif fname == 'club_flag.json':
            ConfigClubFlag.initialize(data)

        elif fname == 'qianban.json':
            ConfigQianBan.initialize(data)
        elif fname == 'inspire.json':
            ConfigInspire.initialize(data)
        elif fname == 'inspire_level_addition.json':
            ConfigInspireLevelAddition.initialize(data)
        elif fname == 'inspire_step_addition.json':
            ConfigInspireStepAddition.initialize(data)

        elif fname == 'activity_signin.json':
            ConfigSignIn.initialize(data)

        elif fname == 'talent.json':
            ConfigTalent.initialize(data)
        elif fname == 'dungeon.json':
            ConfigDungeon.initialize(data)
        elif fname == 'dungeon_grade.json':
            ConfigDungeonGrade.initialize(data)
        elif fname == 'dungeon_reset_cost.json':
            ConfigDungeonBuyCost.initialize(data)

        elif fname == 'npc_formation.json':
            ConfigNPCFormation.initialize(data)

        elif fname == 'arena_npc.json':
            ConfigArenaNPC.initialize(data)
        elif fname == 'arena_honor_reward.json':
            ConfigArenaHonorReward.initialize(data)
        elif fname == 'arena_rank_reward.json':
            ConfigArenaRankReward.initialize(data)
        elif fname == 'arena_rank_reward_weekly.json':
            ConfigArenaRankRewardWeekly.initialize(data)
        elif fname == 'arena_match_reward.json':
            ConfigArenaMatchReward.initialize(data)
        elif fname == 'arena_buy_times_cost.json':
            ConfigArenaBuyTimesCost.initialize(data)
        elif fname == 'arena_search_range.json':
            ConfigArenaSearchRange.initialize(data)
        elif fname == 'arena_reset_cost.json':
            ConfigArenaSearchResetCost.initialize(data)

        elif fname == 'tower_level.json':
            ConfigTowerLevel.initialize(data)
        elif fname == 'tower_reset_cost.json':
            ConfigTowerResetCost.initialize(data)
        elif fname == 'tower_sale_goods.json':
            ConfigTowerSaleGoods.initialize(data)
        elif fname == 'tower_rank_reward.json':
            ConfigTowerRankReward.initialize(data)

        elif fname == 'territory_building.json':
            ConfigTerritoryBuilding.initialize(data)
        elif fname == 'territory_inspire_cost.json':
            ConfigInspireCost.initialize(data)
        elif fname == 'territory_staff_special_product.json':
            ConfigTerritoryStaffProduct.initialize(data)
        elif fname == 'territory_event.json':
            ConfigTerritoryEvent.initialize(data)
        elif fname == 'territory_store.json':
            ConfigTerritoryStore.initialize(data)

        elif fname == 'store_type.json':
            ConfigStoreType.initialize(data)
        elif fname == 'store.json':
            ConfigStore.initialize(data)
        elif fname == 'store_refresh_cost.json':
            ConfigStoreRefreshCost.initialize(data)

        elif fname == 'vip.json':
            ConfigVIP.initialize(data)

        elif fname == 'collection.json':
            ConfigCollection.initialize(data)

        elif fname == 'energy_buy_cost.json':
            ConfigEnergyBuyCost.initialize(data)

        elif fname == 'formation.json':
            ConfigFormation.initialize(data)
        elif fname == 'formation_slot.json':
            ConfigFormationSlot.initialize(data)

        elif fname == 'welfare_level_reward.json':
            ConfigWelfareLevelReward.initialize(data)
        elif fname == 'welfare_new_player.json':
            ConfigWelfareNewPlayer.initialize(data)
        elif fname == 'welfare_signin.json':
            ConfigWelfareSignIn.initialize(data)

        elif fname == 'broadcast_template.json':
            ConfigBroadcastTemplate.initialize(data)

        elif fname == 'union_level.json':
            ConfigUnionLevel.initialize(data)
        elif fname == 'union_signin.json':
            ConfigUnionSignin.initialize(data)
        elif fname == 'union_explore.json':
            ConfigUnionExplore.initialize(data)
        elif fname == 'union_explore_rank_reward.json':
            ConfigUnionExploreRankReward.initialize(data)
        elif fname == 'union_member_explore_rank_reward.json':
            ConfigUnionMemberExploreRankReward.initialize(data)
        elif fname == 'union_harass_buy_times_cost.json':
            ConfigUnionHarassBuyTimesCost.initialize(data)
        elif fname == 'union_skill.json':
            ConfigUnionSkill.initialize(data)

        elif fname == 'purchase_yueka.json':
            ConfigPurchaseYueka.initialize(data)
        elif fname == 'purchase_goods.json':
            ConfigPurchaseGoods.initialize(data)
        elif fname == 'purchase_first_reward.json':
            ConfigPurchaseFirstReward.initialize(data)

        elif fname == 'activity_daily_buy.json':
            ConfigActivityDailyBuy.initialize(data)
        elif fname == 'activity_new_player.json':
            ConfigActivityNewPlayer.initialize(data)
        elif fname == 'activity_online_time.json':
            ConfigActivityOnlineTime.initialize(data)
        elif fname == 'activity_challenge.json':
            ConfigActivityChallenge.initialize(data)
        elif fname == 'activity_purchase_continues.json':
            ConfigActivityPurchaseContinues.initialize(data)
        elif fname == 'activity_level_growing.json':
            ConfigActivityLevelGrowing.initialize(data)

        elif fname == 'base_station_level.json':
            ConfigBaseStationLevel.initialize(data)
        elif fname == 'plunder_income.json':
            ConfigPlunderIncome.initialize(data)
        elif fname == 'plunder_buy_times_cost.json':
            ConfigPlunderBuyTimesCost.initialize(data)
        elif fname == 'plunder_npc.json':
            ConfigPlunderNPC.initialize(data)
        elif fname == 'plunder_daily_reward.json':
            ConfigPlunderDailyReward.initialize(data)

        elif fname == 'party_level.json':
            ConfigPartyLevel.initialize(data)
        elif fname == 'party_buy_item.json':
            ConfigPartyBuyItem.initialize(data)

        elif fname == 'championship_win_score.json':
            ConfigChampionWinScore.initialize(data)
        elif fname == 'championship_score_reward.json':
            ConfigChampionScoreReward.initialize(data)
        elif fname == 'championship_rank_reward.json':
            ConfigChampionRankReward.initialize(data)
        elif fname == 'championship_bet.json':
            ConfigChampionBet.initialize(data)

    _has_configed = True
    sys.stderr.write("LOAD CONFIG FROM {0}\n".format(z_file))
Ejemplo n.º 4
0
def load_config():
    from django.conf import settings
    from apps.config.models import Config as ModelConfig

    global _has_configed
    if _has_configed:
        return

    if os.environ.get('DIANJING_CONFIG', '') == 'local':
        z_file = os.path.join(settings.BASE_DIR, 'config', 'config.zip')
    else:
        if settings.CONFIG_FILE:
            z_file = settings.CONFIG_FILE
        else:
            c = ModelConfig.get_config()
            if c:
                z_file = c.config.path
            else:
                raise Exception("No config in db. Should set env: DIANJING_CONFIG=local, or CONFIG_FILE in settings.xml")

    z = zipfile.ZipFile(z_file)
    for fname in z.namelist():
        content = z.open(fname).read()
        if not content:
            continue

        data = json.loads(content)

        if fname == 'global_config.json':
            GlobalConfig.initialize(data)
        elif fname == 'errormsg.json':
            ConfigErrorMessage.initialize(data)

        elif fname == 'first_name.json':
            ConfigFirstName.initialize(data)
        elif fname == 'last_name.json':
            ConfigLastName.initialize(data)

        elif fname == 'item_new.json':
            ConfigItemNew.initialize(data)
        elif fname == 'item_use.json':
            ConfigItemUse.initialize(data)
        elif fname == 'item_merge.json':
            ConfigItemMerge.initialize(data)
        elif fname == 'equipment_new.json':
            ConfigEquipmentNew.initialize(data)
        elif fname == 'equipment_special.json':
            ConfigEquipmentSpecial.initialize(data)
        elif fname == 'equipment_special_generate.json':
            ConfigEquipmentSpecialGenerate.initialize(data)
        elif fname == 'equipment_special_growing_property.json':
            ConfigEquipmentSpecialGrowingProperty.initialize(data)
        elif fname == 'equipment_special_level.json':
            ConfigEquipmentSpecialLevel.initialize(data)
        elif fname == 'equipment_special_score_to_growing.json':
            ConfigEquipmentSpecialScoreToGrowing.initialize(data)

        elif fname == 'staff_new.json':
            ConfigStaffNew.initialize(data)
        elif fname == 'staff_level_new.json':
            ConfigStaffLevelNew.initialize(data)
        elif fname == 'staff_star.json':
            ConfigStaffStar.initialize(data)
        elif fname == 'staff_equip_level_addition.json':
            ConfigStaffEquipmentLevelAddition.initialize(data)
        elif fname == 'staff_equip_quality_addition.json':
            ConfigStaffEquipmentQualityAddition.initialize(data)
        elif fname == 'staff_recruit.json':
            ConfigStaffRecruit.initialize(data)

        elif fname == 'challenge_chapter.json':
            ConfigChapter.initialize(data)
        elif fname == 'challenge_match.json':
            ConfigChallengeMatch.initialize(data)
        elif fname == 'challenge_buy_cost.json':
            ConfigChallengeResetCost.initialize(data)

        elif fname == 'unit_new.json':
            ConfigUnitNew.initialize(data)
        elif fname == 'unit_unlock.json':
            ConfigUnitUnLock.initialize(data)
        elif fname == 'unit_level_addition.json':
            ConfigUnitLevelAddition.initialize(data)
        elif fname == 'unit_step_addition.json':
            ConfigUnitStepAddition.initialize(data)

        elif fname == 'talent_skill.json':
            ConfigTalentSkill.initialize(data)

        elif fname == 'task_condition.json':
            ConfigTaskCondition.initialize(data)
        elif fname == 'task_main.json':
            ConfigTaskMain.initialize(data)
        elif fname == 'task_daily.json':
            ConfigTaskDaily.initialize(data)

        elif fname == 'club_level.json':
            ConfigClubLevel.initialize(data)
        elif fname == 'club_flag.json':
            ConfigClubFlag.initialize(data)

        elif fname == 'qianban.json':
            ConfigQianBan.initialize(data)
        elif fname == 'inspire.json':
            ConfigInspire.initialize(data)
        elif fname == 'inspire_level_addition.json':
            ConfigInspireLevelAddition.initialize(data)
        elif fname == 'inspire_step_addition.json':
            ConfigInspireStepAddition.initialize(data)

        elif fname == 'activity_signin.json':
            ConfigSignIn.initialize(data)

        elif fname == 'talent.json':
            ConfigTalent.initialize(data)
        elif fname == 'dungeon.json':
            ConfigDungeon.initialize(data)
        elif fname == 'dungeon_grade.json':
            ConfigDungeonGrade.initialize(data)
        elif fname == 'dungeon_reset_cost.json':
            ConfigDungeonBuyCost.initialize(data)

        elif fname == 'npc_formation.json':
            ConfigNPCFormation.initialize(data)

        elif fname == 'arena_npc.json':
            ConfigArenaNPC.initialize(data)
        elif fname == 'arena_honor_reward.json':
            ConfigArenaHonorReward.initialize(data)
        elif fname == 'arena_rank_reward.json':
            ConfigArenaRankReward.initialize(data)
        elif fname == 'arena_rank_reward_weekly.json':
            ConfigArenaRankRewardWeekly.initialize(data)
        elif fname == 'arena_match_reward.json':
            ConfigArenaMatchReward.initialize(data)
        elif fname == 'arena_buy_times_cost.json':
            ConfigArenaBuyTimesCost.initialize(data)
        elif fname == 'arena_search_range.json':
            ConfigArenaSearchRange.initialize(data)
        elif fname == 'arena_reset_cost.json':
            ConfigArenaSearchResetCost.initialize(data)

        elif fname == 'tower_level.json':
            ConfigTowerLevel.initialize(data)
        elif fname == 'tower_reset_cost.json':
            ConfigTowerResetCost.initialize(data)
        elif fname == 'tower_sale_goods.json':
            ConfigTowerSaleGoods.initialize(data)
        elif fname == 'tower_rank_reward.json':
            ConfigTowerRankReward.initialize(data)

        elif fname == 'territory_building.json':
            ConfigTerritoryBuilding.initialize(data)
        elif fname == 'territory_inspire_cost.json':
            ConfigInspireCost.initialize(data)
        elif fname == 'territory_staff_special_product.json':
            ConfigTerritoryStaffProduct.initialize(data)
        elif fname == 'territory_event.json':
            ConfigTerritoryEvent.initialize(data)
        elif fname == 'territory_store.json':
            ConfigTerritoryStore.initialize(data)

        elif fname == 'store_type.json':
            ConfigStoreType.initialize(data)
        elif fname == 'store.json':
            ConfigStore.initialize(data)
        elif fname == 'store_refresh_cost.json':
            ConfigStoreRefreshCost.initialize(data)

        elif fname == 'vip.json':
            ConfigVIP.initialize(data)

        elif fname == 'collection.json':
            ConfigCollection.initialize(data)

        elif fname == 'energy_buy_cost.json':
            ConfigEnergyBuyCost.initialize(data)

        elif fname == 'formation.json':
            ConfigFormation.initialize(data)
        elif fname == 'formation_slot.json':
            ConfigFormationSlot.initialize(data)

        elif fname == 'welfare_level_reward.json':
            ConfigWelfareLevelReward.initialize(data)
        elif fname == 'welfare_new_player.json':
            ConfigWelfareNewPlayer.initialize(data)
        elif fname == 'welfare_signin.json':
            ConfigWelfareSignIn.initialize(data)

        elif fname == 'broadcast_template.json':
            ConfigBroadcastTemplate.initialize(data)

        elif fname == 'union_level.json':
            ConfigUnionLevel.initialize(data)
        elif fname == 'union_signin.json':
            ConfigUnionSignin.initialize(data)
        elif fname == 'union_explore.json':
            ConfigUnionExplore.initialize(data)
        elif fname == 'union_explore_rank_reward.json':
            ConfigUnionExploreRankReward.initialize(data)
        elif fname == 'union_member_explore_rank_reward.json':
            ConfigUnionMemberExploreRankReward.initialize(data)
        elif fname == 'union_harass_buy_times_cost.json':
            ConfigUnionHarassBuyTimesCost.initialize(data)
        elif fname == 'union_skill.json':
            ConfigUnionSkill.initialize(data)

        elif fname == 'purchase_yueka.json':
            ConfigPurchaseYueka.initialize(data)
        elif fname == 'purchase_goods.json':
            ConfigPurchaseGoods.initialize(data)
        elif fname == 'purchase_first_reward.json':
            ConfigPurchaseFirstReward.initialize(data)

        elif fname == 'activity_daily_buy.json':
            ConfigActivityDailyBuy.initialize(data)
        elif fname == 'activity_new_player.json':
            ConfigActivityNewPlayer.initialize(data)
        elif fname == 'activity_online_time.json':
            ConfigActivityOnlineTime.initialize(data)
        elif fname == 'activity_challenge.json':
            ConfigActivityChallenge.initialize(data)
        elif fname == 'activity_purchase_continues.json':
            ConfigActivityPurchaseContinues.initialize(data)
        elif fname == 'activity_level_growing.json':
            ConfigActivityLevelGrowing.initialize(data)

        elif fname == 'base_station_level.json':
            ConfigBaseStationLevel.initialize(data)
        elif fname == 'plunder_income.json':
            ConfigPlunderIncome.initialize(data)
        elif fname == 'plunder_buy_times_cost.json':
            ConfigPlunderBuyTimesCost.initialize(data)
        elif fname == 'plunder_npc.json':
            ConfigPlunderNPC.initialize(data)
        elif fname == 'plunder_daily_reward.json':
            ConfigPlunderDailyReward.initialize(data)

        elif fname == 'party_level.json':
            ConfigPartyLevel.initialize(data)
        elif fname == 'party_buy_item.json':
            ConfigPartyBuyItem.initialize(data)

        elif fname == 'championship_win_score.json':
            ConfigChampionWinScore.initialize(data)
        elif fname == 'championship_score_reward.json':
            ConfigChampionScoreReward.initialize(data)
        elif fname == 'championship_rank_reward.json':
            ConfigChampionRankReward.initialize(data)
        elif fname == 'championship_bet.json':
            ConfigChampionBet.initialize(data)

    _has_configed = True
    sys.stderr.write("LOAD CONFIG FROM {0}\n".format(z_file))