| AWSTemplateFormatVersion: '2010-09-09' |
| Transform: AWS::Serverless-2016-10-31 |
| Description: > |
| llmlite-service |
| |
| SAM Template for llmlite-service |
|
|
| |
| Globals: |
| Function: |
| Timeout: 600 |
| MemorySize: 128 |
| Environment: |
| Variables: |
| WORKER_CONFIG: !Ref WorkerConfigParameter |
|
|
| Parameters: |
| AliasParameter: |
| Type: String |
| Default: live |
| WorkerConfigParameter: |
| Type: String |
| Description: Sample environment variable |
| Default: '{"model": null, "alias": null, "api_base": null, "api_version": "2023-07-01-preview", "debug": false, "temperature": null, "max_tokens": null, "request_timeout": 600, "max_budget": null, "telemetry": true, "drop_params": false, "add_function_to_prompt": false, "headers": null, "save": false, "config": null, "use_queue": false}' |
|
|
| Resources: |
| MyUrlFunctionPermissions: |
| Type: AWS::Lambda::Permission |
| Properties: |
| FunctionName: !Ref URL |
| Action: lambda:InvokeFunctionUrl |
| Principal: "*" |
| FunctionUrlAuthType: NONE |
|
|
| Function: |
| Type: AWS::Serverless::Function |
| Properties: |
| FunctionName: !Sub "${AWS::StackName}-function" |
| CodeUri: "./litellm" |
| Handler: proxy/lambda.handler |
| Runtime: python3.11 |
| AutoPublishAlias: !Ref AliasParameter |
| Architectures: |
| - x86_64 |
| DeploymentPreference: |
| Type: AllAtOnce |
| Alarms: |
| - !Ref NewVersionErrorMetricGreaterThanZeroAlarm |
|
|
| NewVersionErrorMetricGreaterThanZeroAlarm: |
| Type: "AWS::CloudWatch::Alarm" |
| Properties: |
| AlarmDescription: Lambda Function Error > 0 |
| ComparisonOperator: GreaterThanThreshold |
| Dimensions: |
| - Name: Resource |
| Value: !Sub "${Function}:live" |
| - Name: FunctionName |
| Value: !Ref Function |
| - Name: ExecutedVersion |
| Value: !GetAtt Function.Version.Version |
| EvaluationPeriods: 1 |
| Unit: Count |
| MetricName: Errors |
| Namespace: AWS/Lambda |
| Period: 60 |
| Statistic: Sum |
| Threshold: 0 |
|
|
| URL: |
| Type: AWS::Lambda::Url |
| DependsOn: FunctionAliaslive |
| Properties: |
| AuthType: NONE |
| Qualifier: live |
| TargetFunctionArn: !GetAtt Function.Arn |
|
|
| Outputs: |
| FunctionARN: |
| Description: "Lambda Function ARN" |
| Value: !GetAtt Function.Arn |
|
|
| FunctionUrl: |
| Description: "Lambda Function URL Endpoint" |
| Value: |
| Fn::GetAtt: URL.FunctionUrl |
|
|
| FunctionVersion: |
| Description: "Lambda Function Version" |
| Value: !GetAtt Function.Version.Version |
| |
| FunctionNewAlarmARN: |
| Description: "Lambda Function New Alarm ARN" |
| Value: !GetAtt NewVersionErrorMetricGreaterThanZeroAlarm.Arn |
|
|