No cache behavior in cache function

@st.cache
def expensive_computation(a, b, players):
sleep(3)
return a * b

players = team_info.loc[team1[1]][['player1', 'player2', 'player3', 'player4', 'player5']].values
res = expensive_computation(a, b, players)

team_info is DataFrame.

Hi. When i add players argument, cached properties are disappear from function.
Without players - expensive_computation(a, b) everything ok

I think it can happen because each_time id(players) are different. and streamlit think that it is different object. how can i fix it?