Python(17)
-
[Python] URL 라이브러리 403 에러 해결하기 (urllib/requests)
서론안녕하세요! 오늘은 웹 크롤링을 하다 보면 자주 마주치게 되는 403 에러에 대해 이야기해보려고 합니다. 특히 Python의 urllib이나 requests를 사용할 때 자주 발생하는데요, 이 문제를 어떻게 해결할 수 있는지 알아보겠습니다.무엇이 문제일까?403 에러가 발생하는 주된 이유는 웹사이트에서 봇이나 자동화된 접근을 차단하기 때문입니다. 특히 다음과 같은 경우에 자주 발생합니다:기본 헤더로만 접근할 때접근 패턴이 봇처럼 보일 때특정 라이브러리의 시그니처가 감지될 때해결 방법 살펴보기1. 다양한 헤더 시도하기import requests# 여러 가지 헤더를 준비headers_1 = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) Ap..
2024.11.14 -
[Langchain] Passthrough를 활용한 간단한 Chain 구성하기
서론안녕하세요! 오늘은 Langchain에서 Chain을 구성할 때 자주 사용되는 Passthrough에 대해서 알아보려고 합니다. 특히 LCEL(Langchain Expression Language)에서 많이 활용되는 기능인데요, 이름 그대로 데이터를 '통과'시키는 역할을 하지만 생각보다 활용도가 높답니다. 무엇이 좋을까?Passthrough는 다음과 같은 장점이 있습니다:Chain 구성을 단순화할 수 있습니다.입력 데이터를 그대로 전달하면서도 추가적인 처리가 가능합니다.다른 Chain들과 조합하기 쉽습니다.코드로 살펴보기간단한 예제 코드로 살펴보겠습니다.from langchain.chat_models import ChatOpenAIfrom langchain.schema.runnable import R..
2024.11.14 -
[Langchain] FastAPI에서 LLM Agent를 활용한 Response Streaming
서론저번에 한번 같은 글을 올렸었는데요 그것보다 훨씬 더 간편하고 성능적으로 개선된 방법을 설명해 볼까 합니다.기존글은 이거예요!https://todaycodeplus.tistory.com/70 [Langchain] Langserve에서 LLM Agent를 활용한 Response Streaming기존에 LCEL기반의 LLM pipeline에서 Agent를 활용하는 방식으로 전환을 하고 있었습니다. 그 이유는 아래와 같습니다.1. Retriever를 구조화하여 사용하기 힘들다.2. 복잡한 형태, 크로스 도매인을 가진todaycodeplus.tistory.com 무엇이 바뀌었을까?우선 기존에는 방식이 다음과 같았습니다. Agent가 결과물을 생성하는 과정에서 LLM모델의 Output에서 생성되는 Token을..
2024.10.31 -
python - pandas apply를 사용한 데이터 수정 with lambda
pandas를 사용해서 데이터를 다룰 때 구성된 데이터의 하나의 컬럼 데이터를 통째로 연산해야 하거나 변환해야하는 경우가 생기게 됩니다. 이때 사용하면 유용한 pandas 함수 apply를 알아봅시다 우선 데이터를 생성해 볼까요? 데이터 셋 생성 import pandas as pd # 예제 데이터프레임 생성 data = { '이름': ['홍길동', '이순신', '박보영'], '나이': [25, 40, 33], '부모의 나이 평균': [55, 62, 63], '도시': ['서울', '부산', '대구'] } df = pd.DataFrame(data) 다음과 같은 테이블을 생성 했습니다. 여기서 처음 시도해 볼 것은 이 유저의 나이를 1씩 더하는 작업을 진행하게 될겁니다 단일 Column 수정 - 유저의 나이..
2024.03.12 -
Python - Anaconda를 활용한 가상환경 생성
아나콘다를 활용해서 가상환경을 생성 해 보자. >conda create -n python= 위 명령어를 실행하게 되면 아래와 같은 가상환경에 기본적인 라이브러리 설치에 대한 동의 절차가 실행 된다. Y를 선택해서 가상환경을 생성한다. conda activate 위 명령어를 사용해서 가상환경을 활성화 하고 pip를 이용해서 다양한 라이브러리를 설치 관리할 수 있다.
2022.06.15 -
Python - bytes를 String으로 변환하는 방법
utf-8으로 encoding된 bytes를 String으로 다시 변환해야할 때가 있습니다. bytes를 string으로 decoding하는 방법을 소개합니다. string.decode()를 이용한 방법 str()을 이용한 방법 string.decode()를 이용한 방법 string.decode(encoding)으로 bytes를 string으로 변환할 수 있습니다. bytes가 encoding될 때 사용된 타입을 인자로 전달하면 됩니다. # bytes bytes = b'Hello world, Python' print(bytes) print(type(bytes)) # decode bytes to string result = bytes.decode('utf-8') print(result) print(type..
2022.06.15