make lpips optional

Summary: So that lpips isn't needed in readthedocs

Reviewed By: shapovalov

Differential Revision: D40859351

fbshipit-source-id: 58933bd3b71e78e658fbce56c3663b11ee2331f6
This commit is contained in:
Jeremy Reizenstein 2022-10-31 14:44:41 -07:00 committed by Facebook GitHub Bot
parent eff0aad15a
commit 322c8f2f50

View File

@ -5,13 +5,12 @@
# LICENSE file in the root directory of this source tree.
import copy
import json
import logging
import os
import warnings
from typing import Any, Dict, List, Optional, Tuple
import lpips
import torch
import tqdm
@ -89,8 +88,16 @@ class ImplicitronEvaluator(EvaluatorBase):
Returns:
A dictionary of results.
"""
try:
import lpips
lpips_model = lpips.LPIPS(net="vgg")
lpips_model = lpips_model.to(device)
except ImportError:
warnings.warn(
"lpips library NOT FOUND. lpips losses will not be calculated"
)
lpips_model = None
model.eval()