inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

모델의 성능에 따라서 선택하는 도구가 많이 차이 나나요?

미해결

AI 에이전트로 구현하는 RAG 시스템(w. LangGraph)

현재 섹션 2.16번 강의 학습 중에 있습니다. ollma를 통해서 gpt-oss:20b 모델을 로컬로 연결해서 학습하고 있는데, search_web 도구로만 응답을 하더라구요. 아무리 쿼리를 바꿔도 wiki_summary, wiki_search 와 같은 도구를 호출해서 응답을 작성하지 않습니다. 혹시 제가 놓치고 있는게 있을까요?

  • llm
  • langchain
  • rag
  • ai-agent
  • langgraph
ehdns1133 댓글 2 좋아요 0 조회수 163

인터페이스

해결됨

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

안녕하세요! 이번 강의 수강 중 서비스 인터페이스에 대해 궁금하여 글을 남기게 되었습니다. 흔히 스프링 프로젝트에서 보통 Service 인터페이스와 ServiceImpl 구현체로 나누어 개발하며 제가 참여하게 된 프로젝트 또한 이러한 구조였습니다. 이미 이전 개발자 분께서 Service 인터페이스와 ServiceImpl 구현체로 나눠놓은 상태였고, 제가 A 기능의 AServiceImpl 안에 특정 서비스 로직이 비대해짐에 따라 해당 코드가 명확하지 않다고 생각되어 메서드로 분리하게 되었습니다. A 엔티티의 상태, 계산 등의 로직으로 private 메서드를 두었습니다. 여기서 동료와 의견이 갈렸습니다: 동료 입장: 1. ServiceImpl 안의 모든 메서드는 반드시 인터페이스에 있어야 한다. 2. 인터페이스는 외부·내부 구분이 아니라, 구현체가 제공하는 기능을 보장하는 것이므로 전부 담아야 한다. 3. 내부 메서드를 둘 거라면 굳이 인터페이스로 추상화할 필요가 없고 그냥 클래스로 쓰면 된다. 제 입장: 1. 인터페이스에는 “외부 계약(=공개 API)”만 있어야 한다. 2. 구현체 내부에서만 쓰이는 로직은 private으로 감추는 게 맞고, 외부에서 호출할 필요가 전혀 없다. 3. 인터페이스를 구현체 내부 헬퍼까지 다 포함하면, 오히려 계약이 불필요하게 비대해지고 역할이 모호해진다. 핵심 쟁점 저는 public 메서드는 모두 인터페이스에 있어야 한다는 데에는 동의합니다. 또한, 단순 public, private 만 있다면, 인터페이스의 역할이 모호하다는 것또한 이해하지만, 이전 코드와의 일관성과 운영 중인 시스템에 대한 변경이 필요할정도의 중대사항이라고 생각하지 않습니다. 궁금한 점은 private/내부 헬퍼 메서드까지 인터페이스에 강제로 올리는 게 맞는지, 인터페이스를 사용하는 의의가 궁금합니다. 긴글 읽어주셔서 감사합니다.

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
  • ddd
alcuz 댓글 2 좋아요 0 조회수 88

redis 종료시 캐싱 처리

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요! article-read service에서 ArticleIdListRepository는 createdEvent를 받았을 때만 추가되는데 만약 redis가 종료돼 데이터가 유실된다면 createdEvent로만 추가되기 때문에 당장 캐시 db로서 역할을 못 할 것 같습니다 이 부분은 redis에 데이터가 유실되지 않는다고 가정하신 뒤 코드를 작성한 것이 맞을까요??

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
jhkim593 댓글 2 좋아요 0 조회수 81

fail을 똑같이 쳤는데 오류가 발생해요

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] fail을 썻는데 전 빨간 밑줄이 떠요 gpt한테 무르니까 import 써야 한다는데 import쓰고 실행 돌리니까 또 틀렸다고 하고..

  • java
  • spring
  • mvc
  • spring-boot
all.kite091106 댓글 2 좋아요 0 조회수 202

전처리기의 마지막 예제 메인함수안에 printf안에 있는 "\"%S\"\n" 에서

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

안녕하세요? 주말코딩님, 전처리기의 마지막 예제 메인함수안에 printf ( "%s\n" , 인사말); printf ( "제 이름은 %s입니다.\n" , 이름); printf ( "제가 좋아하는 명언은: \"%s\"\n" , 좋아하는_명언) 이렇게 되어 있는데요 인사말과 좋아하는_명언의 출력문 차이가 왜 발생하는지 궁금합니다. (개행은 설명안해주셔도 됩니다.) "%s\n" vs \"%s\"\n" 감사합니다.

  • python
  • java
  • c
  • 정보처리기사
ysd9825 댓글 2 좋아요 0 조회수 64

궁금한게 있습니다.

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

ManyToOne 이 N : 1이라는관계를 표현한다는건 이해가 가는데 그게 어떻게 User 객체와 user_id bigint 컬럼과 매핑이 되는지 잘 모르겠습니다. 대출기록이 여러개고 User 가 1개 라는 것과 저것이 무슨 연관인지 이해가 안갑니다ㅜ

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
eovnfjfpa 댓글 2 좋아요 0 조회수 88

섹션 14. 115번 강의 내용 질문

미해결

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하십니까 선생님, 115번 강의 내용 중 질문이 있습니다. 각각 작업의 크기를 1100, 1200, 1201번 경우로 나눠서 테스트를 하였는데 작업 처리 속도가 더 빨라서 max 스레드 개수까지 안 늘어날 수도 있지 않을까 하는 생각이 들었습니다. 즉, 작업 처리 속도가 빨라서 큐에 적재되는 작업이 줄어들어 큐에 담긴 작업이 1000개 되지 않아 스레드 긴급 투입이 발생하지 않을 수도 있지 않은가요?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
광교js 댓글 2 좋아요 0 조회수 100

챕터별 설명하신 내용의 실행가능한 소스가 있는지 궁금합니다.

미해결

죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.

중간중간 소스만으로 실행가능한 소스를 만들고, 이해하는게 어렵습니다. 큰 챕터별로 실행가능한 소스가 없는지 궁금합니다. 즐거운 하루보내세요.

  • java
  • spring
  • spring-boot
  • spring-batch
  • backend
빈빠 댓글 2 좋아요 1 조회수 95

index.html Welcome page

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. Index.html 설정 후 localhost:8080 하여도 welcome page가 뜨지 않습니다. 1:36 확인 부탁드립니다. 감사합니다.

  • java
  • spring
  • mvc
  • spring-boot
댓글 1 좋아요 0 조회수 166

FormLoginConfigure에서 생성하는 필터

미해결

스프링 시큐리티 OAuth2

FormLoginConfigure에서 생성하는 필터가 UsernamePasswordAuthenticationFilter라고 말씀해주셨는데(8:37) ㅎ initDefaultLoginFilter 메서드에서 생성되는 필터 클래스가 DefaultLoginPageGenerationgFilter인거같은데 맞을까요?

  • java
  • spring
  • spring-boot
  • oauth
infbackends 댓글 2 좋아요 0 조회수 104

Select 조회를 할 때 내부 DB 흐름 질문

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

안녕하세요. select * from article where board_id= 1 order by article_iddesc limit 30 offset 90; 해당 쿼리문을 날렸을 때의 문제점을 설명하는 부분에서 이해가 잘 가지 않는 부분이 있어 질문드립니다! 제가 기억하는 내용이 틀릴 수도 있어 질문드립니다! 제가 알고있던 바로는 Secondary index에 의해 만들어진 자료구조에서 leaft노드는 원본 데이터의 주솟값을 가진다고 알고있었습니다. 따라서 강의의 설명에서는 article id를 가지고 다시 clustered index를 통해 조회한다 했지만 바로 O(1)으로 원본 데이터에 접근한다는 이해는 틀린것일까요? 틀렸다면 어떤 부분일까요? 좋은 강의 잘 듣고있습니다! 감사드립니다! 학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
dohyeong254 댓글 2 좋아요 0 조회수 85

뉴스 스크랩시 content를 가져오는 대신 더 효율적인 방안은 무엇일까요?

해결됨

회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)

안녕하세요. 네이버 뉴스 스크립 시 content를 그대로 사용하니 불필요한 정보가 너무 많아서 LLM이 이를 처리하는데 시간도 오래 걸리고, 토큰 비용도 불필요하게 소모되는 것 같은데 혹시 범용적으로 사용 가능한 대안이 있다면 무엇일까요? 웹 지식이 부족해서 반복 시청하며 공부 중인데 저 부분에 대해 조언 주시면 감사하겠습니다!

  • n8n
  • 인공지능(ai)
  • langchain
  • ai-활용-(ax)
  • langgraph
Hyunsang-Coder 댓글 1 좋아요 0 조회수 127

양방향 연관관계 시 연관관계 주인을 설정하는 이유

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 연관관계 를 사용할 경우 연관관계 주인을 설정해야 하는건 이해를 했습니다. @Entity public class Team { @Id @GeneratedValue private Long id; private String name; @OneToMany private List<Member1> members = new ArrayList<>(); } @Entity public class Member1 { @Id @GeneratedValue private Long id; private String username; @ManyToOne @JoinColumn(name = "team_id") private Team team; } 위와 같은 엔티티 구조일 경우 Team 에서도 Member1 에 대한 정보를 알수 있으며 Member1 에서도 Team 에 대한 정보를 알수 있습니다. 이후 둘의 데이터를 삽입한다는 가정하에 다음과 같이 Member 를 먼저 생성후 Team 에 입력할수도 있고 Member1 member1 = new Member1(); member1.setUsername("member1"); em.persist(member1); Team team1 = new Team(); team1.setName("teamA"); team1.getMembers().add(member1); em.persist(team1); 반대로 Team 을 먼저 생성한 뒤에 Member 에게 알려줄수도 있습니다. Team team = new Team(); team.setName("teamA"); em.persist(team); Member1 member = new Member1(); member.setUsername("member1"); member.setTeam(team); em.persist(member); 문제는 여기서 부터 인데... 연관관계 주인을 사용하는 이유는 JPA 에 혼란(?) 을 주지 않기 위함이다 라고 외우고 있는 상태입니다. "mappedBy 를 사용하여 한쪽에서는 쓰기만 가능하도록 동작하도록 한다. " 근데 이게 연관관계 주인하고 무슨 상관인지 잘 모르겠습니다. 그냥 둘다 읽고 쓰고 업데이트 다 가능해도 객체 입장에서는 큰 문제가 없을거 같은데.. 굳이 연관관계 주인이라는 개념을 도입해서 사용하는 이유를 잘 모르겠습니다. 가령 DB 에서는 Team 테이블의 ID 값이 변경이 필요할 경우 그 와 함께 연관되어 있는 Member 테이블에 team_id 값을 변경해줄수도 있고 반대 상황에서도 변경이 가능한데.. 뭔 차이 인지 잘 모르겠습니다.

  • java
  • jpa
정동희 댓글 1 좋아요 0 조회수 85

zerox 사용 시 강의에서 사용된 모델로 진행했을 때의 문제점.

미해결

LangGraph를 활용한 AI Agent 개발 (feat. MCP)

안녕하세요 강사님! langchain 강의부터 잘 수강하고 있는 수강생입니다! 이번 강의 수강 중 궁금증이 생겨 질문 드립니다. zerox 라이브러리 사용해 md 파일로 변환하는 과정 중 자주 발생하는 에러가 있습니다. 소스 코드는 강의내에서 작성한 코드와 똑같습니다 1. ERROR:root:Failed to process image Error: Error in Completion Response. Error: litellm.RateLimitError: RateLimitError: OpenAIException - Error code: 429 - {'error': {'message': 'Rate limit reached for gpt-4o-mini in organization org-dDgP5bwE5XYlEkdzK49V0oM5 on tokens per min (TPM): Limit 200000, Used 200000, Requested 807. Please try again in 242ms. Visit https://platform.openai.com/account/rate-limits to learn more.', 'type': 'tokens', 'param': None, 'code': 'rate_limit_exceeded'}} LiteLLM Retried: 3 times Please check the status of your model provider API status. 2. Give Feedback / Get Help: https://github.com/BerriAI/litellm/issues/new LiteLLM.Info: If you need to debug this error, use litellm.set_verbose=True'. ERROR:root:Failed to process image Error: Error in Completion Response. Error: litellm.RateLimitError: RateLimitError: OpenAIException - Error code: 429 - {'error': {'message': 'Rate limit reached for gpt-4o-mini in organization org-dDgP5bwE5XYlEkdzK49V0oM5 on tokens per min (TPM): Limit 200000, Used 200000, Requested 807. Please try again in 242ms. Visit https://platform.openai.com/account/rate-limits to learn more.', 'type': 'tokens', 'param': None, 'code': 'rate_limit_exceeded'}} Please check the status of your model provider API status. 위와 같이 모두 '분당 토큰 수' 제한 에러입니다. 저는 처음에는 위 문제를 해결하기 위해 pdf 문서를 chunking 하여 한 번에 처리되는 토큰을 제한하려고 했습니다. => 예) 총 페이지를 약 5~6개로 나눠 보내는 방법 def get_total_pages(path: str) -> int: try: from pypdf import PdfReader except Exception: from PyPDF2 import PdfReader # 호환 return len(PdfReader(path).pages) def make_batches(total_pages: int, size: int): pages = list(range(1, total_pages + 1)) # 1-indexed for i in range(0, total_pages, size): yield pages[i:i + size] total = get_total_pages(PDF_PATH) print(f"Total pages: {total}") merged = [] for pages in make_batches(total, BATCH_SIZE): res = await process_with_backoff(pages) # 여기서 배치로 나눠진 항목들 수행 => 문제점 : zerox는 한 호출에서 처리한 페이지들만 마크다운 파일로 만들어 output_dir에 저장하고, 그 뒤에 만들어지는 파일들은 이어 붙여지지 않고 덮어 씌워집니다. 이를 해결하기 위해 비즈니스 로직을 좀 더 구현해야 하나? 했는데.. 이 방법이 맞는지, 시간만 뺏기게 되는게 아닌지 의문이어서 일단 그만두었습니다. 두번째로는 강사님이 사용하신 모델 'gpt-4o-mini' 를 'gpt-4.1-mini' 로 변경하였습니다. 모델을 바꾸니 바로 해결이 되긴 했습니다. 여기서 제가 궁금한 점은 현업에서 이런 작업을 진행 하다 보면 이런 데이터 전처리를 많이 하게 될 거 같은데.. 사이즈가 너무 큰 데이터는 어떤 방식으로 limit나 기타 오류(아직 어떤 오류가 빈번한지는 잘 모르는 상태입니다.)들을 해결해야 하는지가 궁금합니다! 모델을 바꾸는게 맞는건지, 원본 데이터를 최대한 chunking 해서 제가 맨 위에 오류로 보여드린 200000 TPM 을 맞추려고 해야 되는건지... 요런 부분들이 궁금합니다! 긴 글 읽어주셔서 감사합니다!

  • 프롬프트엔지니어링
  • llm
  • ai-agent
  • langgraph
  • mcp
QQuu 댓글 2 좋아요 0 조회수 199

DTO 관련

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

안녕하세요 BookCreateRequest 객체에 name 을받는 생성자를 만들었더니 아무것도 안받는 생성자도 만들어야 정상 작동하더라구요 근데 아예 생성자를 안만드니까 바로 정상 작동하던데 무슨 차이가 있는건가요?

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
eovnfjfpa 댓글 2 좋아요 0 조회수 82

현업에서 springboot를 3.5.5 를 사용해서 공부중인데...

미해결

스프링 시큐리티 OAuth2

httpSecurity 클래스의 메서드 authorizeHttpRequests, formLogin, apply 메서드들의 인자값이 다 바뀌었네요 혹시 3.xx 버전으로 작성된 코드가 있을까요?

  • java
  • spring
  • spring-boot
  • oauth
infbackends 댓글 2 좋아요 0 조회수 323

교안에 있는 7페이지 데이터 영역

미해결

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 교안에 있는 7페이지에 운영체제와 프로세스, 스레드 그림에서 공유되는 부분에 코드, 힙, 기타가 있는데 데이터 영역도 공유되는게 맞는지 궁금해서 질문드립니다. 감사합니다.

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
swdevelop24 댓글 1 좋아요 0 조회수 65

프로젝트 gradle-groovy ?

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] gradle-groovy와 gradle - kotlin중에 뭘로 해야하나요?

  • java
  • spring
  • mvc
  • spring-boot
긴긴소풍 댓글 1 좋아요 0 조회수 451

임베디드 타입과 MappedSuperClass의 차이점이 궁금합니다.

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의를 듣다가 생각나게 된 것이 앞서 배운 @MappedSuperClass가 생각이 났습니다. 이것도 각 엔티티에 공통된 속성을 정해줄 수 있었는데요. 어떤 차이점이 있는지 궁금합니다.

  • java
  • jpa
황희순 댓글 1 좋아요 0 조회수 115

리턴값 관련질문

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

좋은 강의 감사합니다! 함수(메서드) 선언과 호출 강의를 듣는중인데, 리턴값 관련해서 질문이 생겨서 글을 남기게되었습니다. 현재 리턴값이 있고, 없고의 차이를 크게 못느끼겠어서 질문을 남기게 되었습니다. 현재 이해한것은 리턴을 해주게 되면, 호출 한곳에 값을 돌려준다고 이해를 했는데, 리턴을 안하면 함수의 정의가 된곳에서 진행을 한다고 이해를 했는데, 이때 System.out.printIn(); 을 하면 출력이 되는것도 확인이 된는것을 봤습니다(17:45) 결과적으로 리턴값이 있고 없고의 차이를 크게 못느끼겠어서 이렇게 질문을 남기게되었습니다.

  • python
  • java
  • c
  • 정보처리기사
김명수 댓글 2 좋아요 0 조회수 149

인기 태그

인프런 TOP Writers

주간 인기글