Companions and Elite Crew can react with dialogue to COM_Event_Action_Consume_Alcohol and COM_Event_Action_Consume_Drugs (the latter is mapped to COM_Event_Action_Consume_Chems through a native engine function) as defined in the CompanionAffinityEventsScript script:
;**************************************************************************************************
;*************************** COM_Event_Action_Consume_Alcohol ***************************
;*************************** COM_Event_Action_Consume_Drugs ***************************
;**************************************************************************************************
Event Actor.OnItemEquipped(Actor akSender, Form akBaseObject, ObjectReference akReference)
if akBaseObject.HasKeyword(COM_ObjType_ChemBad)
SendAffinityEvent(COM_Event_Action_Consume_Drugs)
elseif akBaseObject.HasKeyword(COM_ObjType_Drink)
SendAffinityEvent(COM_Event_Action_Consume_Alcohol)
endif
EndEvent
Problem: No alcoholic drinks or chems in the vanilla game have the necessary keywords, so companions never react to the player consuming alcoholic drinks or bad chems.
Solution: The "COM_ObjType_Drink" keyword needs to be added to all alcoholic drinks, and "COM_ObjType_ChemBad" added to all bad chems. I have attached an ESP with all alcoholic drinks and chems fixed. Note, I am not sure what exactly qualifies as a "bad chem," so I just added the keyword to all performance enhancing chems for now.
Note, this issue was fixed in the Starfield Community Patch, but not for all alcoholic drinks and chems.

Attached Files:
companionaffinityeventsscript_fixes.esp
companionaffinityeventsscript_fixes.esm
companionaffinityeventsscript_fixes.esm