This commit is contained in:
Timothy J. Baek 2024-06-22 01:39:53 -07:00
parent 9220fdc4a4
commit ae567796ee
2 changed files with 50 additions and 37 deletions

View File

@ -130,7 +130,9 @@ async def get_pipe_models():
manifold_pipe_name = p["name"] manifold_pipe_name = p["name"]
if hasattr(function_module, "name"): if hasattr(function_module, "name"):
manifold_pipe_name = f"{pipe.name}{manifold_pipe_name}" manifold_pipe_name = (
f"{function_module.name}{manifold_pipe_name}"
)
pipe_models.append( pipe_models.append(
{ {

View File

@ -389,26 +389,31 @@ class ChatCompletionMiddleware(BaseHTTPMiddleware):
if hasattr(function_module, "inlet"): if hasattr(function_module, "inlet"):
inlet = function_module.inlet inlet = function_module.inlet
# Get the signature of the function
sig = inspect.signature(inlet)
param = {"body": data}
if "__user__" in sig.parameters:
param = {
**param,
"__user__": {
"id": user.id,
"email": user.email,
"name": user.name,
"role": user.role,
},
}
if "__id__" in sig.parameters:
param = {
**param,
"__id__": filter_id,
}
if inspect.iscoroutinefunction(inlet): if inspect.iscoroutinefunction(inlet):
data = await inlet( data = await inlet(**param)
data,
{
"id": user.id,
"email": user.email,
"name": user.name,
"role": user.role,
},
)
else: else:
data = inlet( data = inlet(**param)
data,
{
"id": user.id,
"email": user.email,
"name": user.name,
"role": user.role,
},
)
except Exception as e: except Exception as e:
print(f"Error: {e}") print(f"Error: {e}")
@ -1031,26 +1036,32 @@ async def chat_completed(form_data: dict, user=Depends(get_verified_user)):
try: try:
if hasattr(function_module, "outlet"): if hasattr(function_module, "outlet"):
outlet = function_module.outlet outlet = function_module.outlet
# Get the signature of the function
sig = inspect.signature(outlet)
param = {"body": data}
if "__user__" in sig.parameters:
param = {
**param,
"__user__": {
"id": user.id,
"email": user.email,
"name": user.name,
"role": user.role,
},
}
if "__id__" in sig.parameters:
param = {
**param,
"__id__": filter_id,
}
if inspect.iscoroutinefunction(outlet): if inspect.iscoroutinefunction(outlet):
data = await outlet( data = await outlet(**param)
data,
{
"id": user.id,
"email": user.email,
"name": user.name,
"role": user.role,
},
)
else: else:
data = outlet( data = outlet(**param)
data,
{
"id": user.id,
"email": user.email,
"name": user.name,
"role": user.role,
},
)
except Exception as e: except Exception as e:
print(f"Error: {e}") print(f"Error: {e}")