[PR #659] [CLOSED] [RFC] Introduce Pluto as a deployment option for LangServe apps #641

Closed
opened 2026-02-16 01:15:46 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/langchain-ai/langserve/pull/659
Author: @jianzs
Created: 5/22/2024
Status: Closed

Base: mainHead: rfc-deploy-using-pluto


📝 Commits (1)

  • 734c6c4 Update README.md to introduce Pluto as a deployment option for LangServe apps

📊 Changes

1 file changed (+11 additions, -0 deletions)

View changed files

📝 README.md (+11 -0)

📄 Description

Hi, I am working on a project called Pluto, which is a cloud-native application development tool. It simplifies cloud application development by providing a streamlined programming interface for leveraging cloud features and building business logic. Developers can define their dependent services and resources, such as Lambda, Bucket, and etc. by defining a variable. Pluto will automatically provision the resources and deploy the application to the cloud. Developer use the Pluto without need to learn complex cloud technologies, such as Terraform, Pulumi or AWS CDK.

To help the LangServe app developers that don't have much experience with cloud to deploy their apps on the cloud. I have added a new section in the README.md file to introduce Pluto as a deployment option for LangServe apps.

In summary, there are two steps to adapt the LangServe application to the Pluto application so that Pluto can deploy it to AWS.

  1. First, put the code related to the FastAPI app into a function and make this function return the FastAPI app instance. Here we assume that the function name is return_fastapi_app.
  2. Then, replace the entire if __name__ == "__main__" code block with the following 4 statements. The router_name can be modified. It is related to the name of the Api Gateway instance created on AWS.
from mangum import Mangum
from pluto_client import Router

router = Router("router_name")
router.all("/*", lambda *args, **kwargs: Mangum(return_fastapi_app(), api_gateway_base_path="/dev")(*args, **kwargs), raw=True)

For more information, please refer to this link.

I'm not entirely sure if this is an optimal interface for developing LangServe applications. Do you believe it's an effective method for LangServe app developers to deploy their applications in the cloud? I would appreciate any suggestions or queries that you might have. Thank you!


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/langchain-ai/langserve/pull/659 **Author:** [@jianzs](https://github.com/jianzs) **Created:** 5/22/2024 **Status:** ❌ Closed **Base:** `main` ← **Head:** `rfc-deploy-using-pluto` --- ### 📝 Commits (1) - [`734c6c4`](https://github.com/langchain-ai/langserve/commit/734c6c438607b164444318b7da7a941a6ae36a49) Update README.md to introduce Pluto as a deployment option for LangServe apps ### 📊 Changes **1 file changed** (+11 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+11 -0) </details> ### 📄 Description Hi, I am working on a project called Pluto, which is a cloud-native application development tool. It simplifies cloud application development by providing a streamlined programming interface for leveraging cloud features and building business logic. Developers can define their dependent services and resources, such as Lambda, Bucket, and etc. by defining a variable. Pluto will automatically provision the resources and deploy the application to the cloud. Developer use the Pluto without need to learn complex cloud technologies, such as Terraform, Pulumi or AWS CDK. To help the LangServe app developers that don't have much experience with cloud to deploy their apps on the cloud. I have added a new section in the README.md file to introduce Pluto as a deployment option for LangServe apps. In summary, there are two steps to adapt the LangServe application to the Pluto application so that Pluto can deploy it to AWS. 1. First, put the code related to the FastAPI app into a function and make this function return the FastAPI app instance. Here we assume that the function name is `return_fastapi_app`. 2. Then, replace the entire if `__name__ == "__main__"` code block with the following 4 statements. The `router_name` can be modified. It is related to the name of the Api Gateway instance created on AWS. ```python from mangum import Mangum from pluto_client import Router router = Router("router_name") router.all("/*", lambda *args, **kwargs: Mangum(return_fastapi_app(), api_gateway_base_path="/dev")(*args, **kwargs), raw=True) ``` For more information, please refer to [this link](https://pluto-lang.vercel.app/cookbook/deploy-langserve-to-aws). I'm not entirely sure if this is an optimal interface for developing LangServe applications. Do you believe it's an effective method for LangServe app developers to deploy their applications in the cloud? I would appreciate any suggestions or queries that you might have. Thank you! --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-16 01:15:46 -05:00
yindo closed this issue 2026-02-16 01:15:46 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langchain-ai/langserve#641