Благодаря WoLpH мне кажется, что мне подходит следующее (EdgeInfo - модель эликсира):
from sqlalchemy import exc
session.begin_nested()
e_info = EdgeInfo(pk_attr_1=pk_attr_1, pk_attr_2=pk_attr_2)
try:
session.commit()
except exc.IntegrityError:
session.rollback()
e_info = EdgeInfo.get((pk_attr_1, pk_attr_2))