스택큐힙리스트

Google Colab에서 FastAPI / Uvicorn을 실행하는 방법은 다음과 같습니다. 본문

카테고리 없음

Google Colab에서 FastAPI / Uvicorn을 실행하는 방법은 다음과 같습니다.

스택큐힙리스트 2023. 11. 6. 07:51
반응형

Google Colab에서 FastAPI / Uvicorn을 사용하여 로컬 웹 앱을 실행하려고합니다. Flask 앱 샘플 코드 중 일부와 같은 방식으로 작동하지 않습니다. 이를 수행 할 수있는 사람이 있었습니까? 감사합니다.


FastAPI 및 Uvicorn 설치 완료


!pip install FastAPI -q
!pip install uvicorn -q

샘플 앱


from fastapi import FastAPI
app = FastAPI()
@app.get(/)
async def root():
return {message: 안녕하세요}

실행 시도


#시도 1
if __name__ == __main__:
uvicorn.run(/content/fastapi_002:app, host=127.0.0.1, port=5000, log_level=info)


#시도 2
#uvicorn main:app --reload
!uvicorn /content/fastapi_001.ipynb:app --reload

답변 1

외부 URL로 포트를 내보내기 위해 ngrok를 사용할 수 있습니다. 기본적으로 ngrok는 로컬호스트에서 이용 가능한 것을 임시 공용 URL로 인터넷에 노출합니다.


먼저 종속성을 설치하세요.


!pip install fastapi nest-asyncio pyngrok uvicorn

앱을 생성하세요.


from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
app = FastAPI()
app.add_middleware(
CORSMiddleware,
allow_origins=['*'],
allow_credentials=True,
allow_methods=['*'],
allow_headers=['*'],
)
@app.get('/')
async def root():
return {'hello': 'world'}

그런 다음 실행하세요.


import nest_asyncio
from pyngrok import ngrok
import uvicorn
ngrok_tunnel = ngrok.connect(8000)
print('공용 URL:', ngrok_tunnel.public_url)
nest_asyncio.apply()
uvicorn.run(app, port=8000)

답변 2

FastAPI 및 Uvicorn을 Google Colab에서 실행하는 방법에 대해 논문을 작성해 보았습니다. 검색 최적화 측면에서 효과적인 내용을 포함하도록 노력했습니다.
제목: Google Colab에서 FastAPI 및 Uvicorn 실행하기: Python 웹 개발을 위한 최상의 환경
서론:
현대 웹 개발에서 Python은 많은 개발자들에게 인기를 얻고 있습니다. 그리고 FastAPI 및 Uvicorn은 Python 기반의 웹 애플리케이션을 빠르고 효과적으로 개발하는 데에 도움이 되는 놀라운 도구입니다. 이 논문에서는 Google Colab에서 FastAPI와 Uvicorn을 실행하는 방법을 알아보겠습니다. Google Colab은 구글의 클라우드 기반 Jupyter 노트북 환경이며, 웹 개발에 필요한 도구를 호스팅하고 실행하는 데에 이상적인 환경을 제공합니다.
1. Colab 환경에서 FastAPI와 Uvicorn 설치하기:
Google Colab은 기본적으로 Python을 지원하므로, FastAPI와 Uvicorn을 설치하는 것은 간단합니다. 아래 명령어를 사용하여 필요한 라이브러리를 설치합니다.
```
!pip install fastapi uvicorn
```
2. FastAPI로 웹 애플리케이션 만들기:
FastAPI를 사용하여 강력하고 효율적인 웹 애플리케이션을 만들 수 있습니다. 아래와 같은 예시 코드로 간단한 웹 애플리케이션을 생성해 보겠습니다.
```python
from fastapi import FastAPI
app = FastAPI()
@app.get(/)
def root():
return {message: Hello, World!}
```
위 코드는 `/` 경로로 요청이 오면 Hello, World!라는 메시지를 반환하는 간단한 웹 애플리케이션을 생성합니다.
3. Uvicorn으로 FastAPI 서버 실행하기:
FastAPI 애플리케이션을 배포하려면 Uvicorn을 사용하여 서버를 실행해야 합니다. 아래와 같은 명령어를 사용하여 Uvicorn 서버를 실행합니다.
```python
import uvicorn
if __name__ == __main__:
uvicorn.run(main:app, host=0.0.0.0, port=8000, reload=True)
```
위 코드는 `main.py` 파일에서 FastAPI 애플리케이션을 실행하며, 호스트는 `0.0.0.0`으로 설정되고 포트는 `8000`으로 설정됩니다. 또한, `reload` 인자를 통해 코드 변경 사항을 자동으로 감지하고 서버를 재시작합니다.
4. Google Colab에서 FastAPI 및 Uvicorn 실행하기:
Google Colab에서 FastAPI 애플리케이션을 실행하려면 아래와 같은 방법을 따라야 합니다.
- 노트북에 `main.py` 파일을 업로드합니다. 위에서 작성한 FastAPI 애플리케이션 코드를 `main.py` 파일로 저장합니다.
- 아래와 같은 명령어를 사용하여 FastAPI 애플리케이션을 실행합니다.
```python
!uvicorn main:app --host 0.0.0.0 --port 8000
```
- 실행 후에는 주소와 포트 번호를 확인할 수 있습니다. Colab 환경에서 실행 중인 FastAPI 서버는 해당 주소와 포트 번호에서 접근할 수 있습니다.
결론:
이 논문에서는 Google Colab에서 FastAPI 및 Uvicorn을 실행하는 방법에 대해 알아보았습니다. Google Colab은 편리한 개발 환경을 제공하며, FastAPI 및 Uvicorn을 사용하면 Python 웹 개발을 더욱 강력하고 효과적으로 할 수 있습니다. 이러한 환경을 통해 웹 개발자들은 더욱 창의적이고 혁신적인 애플리케이션을 만들 수 있을 것입니다.

반응형
Comments