diff --git a/.github/workflows/ai-runner-pipelines-docker.yaml b/.github/workflows/ai-runner-pipelines-docker.yaml index 5ca5d73e..9b38adbd 100644 --- a/.github/workflows/ai-runner-pipelines-docker.yaml +++ b/.github/workflows/ai-runner-pipelines-docker.yaml @@ -34,6 +34,7 @@ jobs: - docker/Dockerfile.segment_anything_2 - docker/Dockerfile.text_to_speech - docker/Dockerfile.audio_to_text + - docker/Dockerfile.llm steps: - name: Check out code uses: actions/checkout@v4.1.1 diff --git a/runner/gateway.openapi.yaml b/runner/gateway.openapi.yaml index 933be8d6..4da1dda7 100644 --- a/runner/gateway.openapi.yaml +++ b/runner/gateway.openapi.yaml @@ -525,7 +525,8 @@ components: AudioResponse: properties: audio: - $ref: '#/components/schemas/MediaURL' + allOf: + - $ref: '#/components/schemas/MediaURL' description: The generated audio. type: object required: @@ -826,7 +827,8 @@ components: HTTPError: properties: detail: - $ref: '#/components/schemas/APIError' + allOf: + - $ref: '#/components/schemas/APIError' description: Detailed error information. type: object required: diff --git a/runner/openapi.yaml b/runner/openapi.yaml index 5b72dbb7..469f1b8a 100644 --- a/runner/openapi.yaml +++ b/runner/openapi.yaml @@ -558,7 +558,8 @@ components: AudioResponse: properties: audio: - $ref: '#/components/schemas/MediaURL' + allOf: + - $ref: '#/components/schemas/MediaURL' description: The generated audio. type: object required: @@ -918,7 +919,8 @@ components: HTTPError: properties: detail: - $ref: '#/components/schemas/APIError' + allOf: + - $ref: '#/components/schemas/APIError' description: Detailed error information. type: object required: diff --git a/worker/docker.go b/worker/docker.go index 9d7720fd..1b30f350 100644 --- a/worker/docker.go +++ b/worker/docker.go @@ -61,6 +61,7 @@ var pipelineToImage = map[string]string{ "segment-anything-2": "livepeer/ai-runner:segment-anything-2", "text-to-speech": "livepeer/ai-runner:text-to-speech", "audio-to-text": "livepeer/ai-runner:audio-to-text", + "llm": "livepeer/ai-runner:llm", } var livePipelineToImage = map[string]string{ diff --git a/worker/runner.gen.go b/worker/runner.gen.go index ee0ee96f..587437ed 100644 --- a/worker/runner.gen.go +++ b/worker/runner.gen.go @@ -41,7 +41,7 @@ type APIError struct { // AudioResponse Response model for audio generation. type AudioResponse struct { - // Audio A URL from which media can be accessed. + // Audio The generated audio. Audio MediaURL `json:"audio"` } @@ -226,7 +226,7 @@ type GPUUtilizationInfo struct { // HTTPError HTTP error response model. type HTTPError struct { - // Detail API error response model. + // Detail Detailed error information. Detail APIError `json:"detail"` } @@ -2991,87 +2991,87 @@ func HandlerWithOptions(si ServerInterface, options ChiServerOptions) http.Handl // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ - "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", - "4t2G3/tP9/8XAAD//wP2rwUCdwAA", + "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", } // GetSwagger returns the content of the embedded swagger specification file