不让有经验的数据科学家发牢骚的技巧

我起初是想要写这篇报道的原因。

除了本公司的工作外,在某大型企业中,我们经常开发与AI相关的系统。今年已经开发了大约3个?4个?系统。

我同一团队的成员中有一位经验丰富的数据科学家,我们经常在开发方针上争论不休(笑)。

问题

在开发AI推荐API过程中,我们在共通工具包中使用了redis、datastore等必要的模块。

对此

熟年エンジニア:
データ整形や、ベクトル化する関数は使いたい。
それ以外のredis関連やdatastore関連のモジュールはインストールしていないからエラーが発生するため、ファイルを分けてほしい

私:
同じプロジェクトなんだから、pip install -r requirements.txtやってくださいよ

因为我不需要使用,所以不想安装。

我:「多么缺乏合作精神的人啊。。。。。」

发生了一个不合理的问题。

解决方案 ‘àn)

import redis

def get_state(id):
    redis = redis.Redis(host='localhost', port=6379, db=0)
    return redis.get(id)

def get_vector(xxx):
    ...

只导入get_vector会出错。


def get_state(id):
    import redis
    redis = redis.Redis(host='localhost', port=6379, db=0)
    return redis.get(id)


def get_vector(xxx):
    ...

当写成「get_vector”,只需要导入这个模块。

当你浏览框架的内部时,偶尔会看到这种描述。

可能不太需要,但是如果能记在脑袋里,有时候可能会有用的情况,例如可以用来避免相互引用问题或者面对未安装该应用的人的应对措施。