묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 1 - Llama 2 Fine-Tuning 해보기
OpenAI Assistants API 기초 예제 중 client.beta.threads.message.list 함수
안녕하세요 수업노트의 코드를 실행했을때 Assistant's Response message value 에서 중간 풀이 과정이 출력되지 않는데 동영상과 차이가 뭘까요?ㅇ 동영상 Value = "I need to solve the equation 3x + 11 = 14. Can you help me?"Value = "Sure, Jane Doe! To solve the eqation 3x + 11 = 14 for x, We need to isolate x on the one side of eqation. Here's how we can do it step by step. Subtract 11 from both sides of the eqation to get '3x' by itself on one side. That leaves us with '3x = 14 - 11' Simplify the right side of equation to find out what '3x' equation. Divide both sides of the equation by 3 to solve for 'x' Let's do the calculation"Value = "The solution to the equation '3x + 11 = 14' is x = 1"ㅇ 실습코드value='The solution to the equation \\(3x + 11 = 14\\) is \\(x = 1\\).')'I need to solve the equation 3x + 11 = 14. Can you help me?'
-
미해결모두를 위한 대규모 언어 모델 LLM Part 3 - 구글 제미나이(Google Gemini) API, OpenAI API와 젬마(Gemma)로 AI 어플리케이션 만들기
PPT 강의자료 요청
안녕하세요. PPT 강의자료는 누락되어있는데, 별도 요청드립니다. 감사합니다.
-
미해결모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 1 - Llama 2 Fine-Tuning 해보기
Fine Tuning 후 inference 하는 예시(코드) 질문
안녕하세요 우선 커리큘럼을 차례대로 재밌게 학습하고 있습니다LLM finetuning 후 추론하는 예시를 따라하고 있는데요아래 박스는 혹시 필요 없는 문장이 아닌가 해서 질문 드립니다감사합니다
-
미해결[ChatGPT 활용 실전 데이터분석 특강] 런던 MBA학생들이 배우는 Data Analytics 강의
범주형 데이터 세트의 불균형 문제
안녕하세요, 수업을 듣다가 fraud detection을 예시로 주셨던 범주형 데이터 속성중에 세트 자체에서 불균형이 큰 경우, 예를 들어 yes 는 1000 개고 no 가 5개 밖에 없는 극단적인 불균형이 있을 때는 모델의 정확도를 맞추기 어렵다고 설명주신 부분에 질문이 있어요. 저도 사실 제 프로젝트를 하던중에 비슷한 문제가 있었어서 SMOTE같은 방법을 써서 어떻게 해서든 불균형 문제를 완화해보려고 노력했는데 주어진 데이터 자체가 너무 불균형이 심하면 설명주셨던 것처럼 별다른 방법을 찾지 못했습니다. 만약 그럼에도 불구하고 그 데이터가 중요한 속성들과 데이터라면 어떻게 다루는 것이 좋을까요? 제가 예전에 했던 방법은 정확하게는 기억이 나지 않지만 그 그룹군을 아예 나누어 data frame을 따로 짜서 분석을 진행해보려고 했던 것 같아요. (예시: no = fraud 그룹군 df, yes = non_fraud 그룹군) 실질적으로는 보통 어떻게 접근하거나 해결하는 지 궁금합니다...!
-
해결됨[Python 초보] Flutter로 만드는 ChatGPT 음성번역앱
음성인식 번역
음성인식으로 영어 인식은 잘 되는데 한국어 인식을 잘 못합니다한국어로 이야기를 해도 영어로 인식이 되는 문제가 있습니다
-
미해결LLM 101: 2시간에 끝내는 All-In-One 코스! 나만의 Llama 채팅데모 프로젝트!
폐쇄 환경에서 챗봇
안녕하세요! 강사님강의 너무 잘들었습니다. 인터넷이 끊긴 폐쇄 환경에서 강의에서의 데모 버전을 구현하려고 합니다. 허깅페이스에서 모델을 다운받아서 진행하면 될까요?
-
해결됨서류탈락은 그만! 챗GPT로 기업별 맞춤 합격 이력서 반자동화하기
신입 이력서에 배운점을 작성하는건?
강의를 다 보시고 직접 하나씩 시행해보시면서 겪게되는 어려움들을 편하게 올려주세요.[가이드]이력서 관련 - 나의 이력서를 직접 업로드 하시고, 어떤 부분이 어려운지 말씀해주세요 GPT관련 - 챗GPT를 쓰시면서 겪으시는 어려움들도 편하게 올려주세요.그 외 다양한 질문 모두 편하게 올려주세요. [주의점]본인의 이력서를 직접 업로드 하실 경우에는 꼭 개인 정보를 가려주세요.안녕하세요 강사님!이제 이력서를 준비하려던중 강사님의 강의를 통해 잘 배우고있습니다. 저는 신입 개발자 취업을 위해 이력서를 준비하려고 하고 있습니다. 프로젝트라고 해봤자 큰건 아니고 2명의 동료와 함께 사용자 없는 서비스 만들어본것이 다입니다..그리고 결과는 좋은 결과 보다는 좋지 않은 결과들이 많습니다. 이 경우, 배운점을 작성하는건 별로일까요?감사합니다.
-
미해결LLM 101: 2시간에 끝내는 All-In-One 코스! 나만의 Llama 채팅데모 프로젝트!
런타임 유형 변경 및 토크나이저 관련 에러
안녕하세요 코랩 실습 과정 중하드웨어 가속기 선택할 때 V100이 비활성화 되어있을경우 어떤 것을 선택해야 하는지 문의 드립니다.아울러 모델튜닝 실습 중 tokenizer.default_chat_template 부분에서 에러가 뜨는데 다음 단계로 넘어갈 수 있도록 하는 방법이 있을까요? 이후 패스하고 넘어간다고 해도 PEFT - LoRA부분에서도 에러가 뜹니다. 혹시 위 부분에서 pip install flash-attn===1.0.4 부분을 처리하지 않아서 오류가 난 것일까요?
-
해결됨[Python 초보] Flutter로 만드는 ChatGPT 음성번역앱
음성인식 하는 마이크 시간이 짧은거 같아요
안녕하세요!섹션 7 Flutter음성대화 마지막 부분인 최종 테스트를 진행하고 있습니다음성인식이 가능은 합니다하지만 인식하는 시간이 짧아 긴 문장은 인식 못하는거 같습니다!!더 긴 문장을 말하고 싶은데 제가 말하는 음성인식 시간을 더 길게 할 수 있는 방법이 있을까요?? 제 코드 입니다오류나는 문제는 없습니다!!import 'package:dash_chat_2/dash_chat_2.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart' as http; // 통신을 할수있는 패키지 import 'dart:convert'; //파싱을 위한 import 'package:speech_to_text/speech_to_text.dart'; //stt 패키지 import 'package:speech_to_text/speech_recognition_result.dart'; //음성을 인식하는 import 'package:flutter_tts/flutter_tts.dart'; // class BasicScreen extends StatefulWidget { @override _BasicState createState() => _BasicState(); } class _BasicState extends State<BasicScreen> { bool isListening = false; // 기본 false SpeechToText _speechToText = SpeechToText();//SpeechToText 인스턴스(?) 생성 bool _speechEnabled = false; //음성인식이 가능한지 아닌지 상태 오류가 나면 인식이 나기 떄문에 사용 안함 isListening로 어느정도 대체 가능 String _lastWords = ''; //인식한 문장이 저장될 lastWords FlutterTts flutterTts = FlutterTts();//TTS 인스턴스(?) 생성 @override void initState() { //음성인식부분을 초기화 하는 코드 super.initState(); _initSpeech(); flutterTts.setLanguage("ko-KR");//인스턴스 언어 flutterTts.setSpeechRate(1.0);// 읽어주는 속도 } ChatUser user1 = ChatUser( id: '1', //우리 firstName: 'me', lastName: 'me', ); ChatUser user2 = ChatUser( id: '2', //chatgpt firstName: 'chatGPT', lastName: 'openAI', profileImage: "assets/img/gpt_icon.png" ); late List<ChatMessage> messages = <ChatMessage>[ //List<ChatMessage> = 채팅 메세지를 리스트 형태로 보관하는 ChatMessage( text: '반갑습니다. 어서오세요. 무엇을 도와드릴까요?', //보여지는 텍스트 user: user2, //누가 얘기하는지 user 설정 createdAt: DateTime.now(), //현재 대화가 발생한 날짜,시간 ), ]; @override Widget build(BuildContext context) { // 화면에 메세지를 보여주는 부분 return Scaffold( //Scaffold라는 형식으로 앱 구성을 묶어준것 appBar: AppBar( //AppBar는 타이틀 부분 title: const Text('Basic example'), ), body: DashChat( // DashChat패키지를 이용한 고유 클래스 / DashChat 정의를 해줌 currentUser: user1, //currentUser = 채팅을 입력하는 사람은 누구 onSend: (ChatMessage m) { setState(() {// setState = 현재 화면의 상황을 업데이트 해준다라고 이해하며 됨 messages.insert(0, m); //messages.insert = 메세지 전송 현재 사용자가 입력한 텍스트를 대화창으로 보내는 역할 ,리스트가 추가되는 거죠 }); Future<String> data = sendMessageToServer(m.text); //입력한 메세지를 받아서 서버에 전송을 해주고 data.then((value){ //결과값을 비동기(?) 형태로 받아와서 user2(chatgpt)가 발화(이야기)하고 통신 결과값을 출력하는 setState(() { messages.insert(0, ChatMessage( text: value, user: user2, createdAt: DateTime.now() )); }); }); }, messages: messages, inputOptions: InputOptions( leading: [ IconButton( icon: Icon(Icons.mic, color: isListening? Colors.red: Colors.black), //음성을 듣고있는 상태면 버튼누름 빨강 / 아니면 기본 검정 onPressed: (){ //아이콘이 눌러진다면 setState(() { //상태를 바꿔줘 isListening = !isListening; // 리스닝이 아닌 상태에 검정이 리스닝 상태인 빨강으로 바뀌는 처리 if (isListening == true){// 음성입력 대기 상태가 되면 print('음성인식 시작'); //폴스였다 트루가 되면 _startListening(); }else{ print('음성인식 끝'); // 트루였다가 풀스 _stopListening(); } }); }, ) ] ), ), ); } //통신을 할 수 있는 코드 = postman에서 테스트를 하면서 코드를 얻은것임,약갼의 수정을 해준것뿐 //json의 어떤 부분을 가져와야하는지 전체를 뿌릴순 없으니 추출하는 부분만 추가한것임 Future<String> sendMessageToServer(String messages) async{ var headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer sk-UGIfeFKyAXIhwIXdM3uf96g176CRFnw5AnHJ2acSpyT3BlbkFJmhIKdmcjh56e01G0Axc5xF9scspNoz_MsXuZPUGW8A', }; var request = http.Request('POST', Uri.parse('https://api.openai.com/v1/chat/completions')); request.body = json.encode({ "model": "gpt-4o-mini", "messages": [ { "role": "user", "content": messages, } ] }); request.headers.addAll(headers); http.StreamedResponse response = await request.send(); if (response.statusCode == 200) { String responseString = await response.stream.bytesToString();//json 문자열들이 string 변수에 저장이 된다 Map<String, dynamic> jsonResponse = json.decode(responseString);//responseString을 json 구조에 맞게 변환을 시킨게 jsonResponse가 된다 -> json 구조대로 입맞에 맞게 값을을 골라올수있음 String result = jsonResponse['choices'] != null? jsonResponse['choices'][0]['message']['content']: "No result found"; print(responseString); // 전체 내용 출력, 터미널 화면에서만 출력이 됨 실제 앱에서 출력되지 않음 그래서 return "ERROR"; 을 가지고있어야함 //message = 결과값 부분만 추출 , result라는 String에 저장 // 'choices' 조건문 return result; //함수를 호출한곳에서 사용을 할 수 있다 //print(await response.stream.bytesToString()); //await response.stream.bytesToString() = 실제 결과값 } else { print(response.reasonPhrase); return "ERROR"; // 오류가 날 경우 화면에서도 오류가 난걸 확인할 수 있게 해줌 } } /// This has to happen only once per app void _initSpeech() async { //초기화 하는 함수 , 마이크 같은 디바이스를 사용하기 떄문에 필요 print("음성인식 기능을 시작합니다."); _speechEnabled = await _speechToText.initialize(); //setState(() {}); } /// Each time to start a speech recognition session void _startListening() async { // start를 하게 되면 _onSpeechResult 부분을 동작을 시킴 print("음성인식을 시작합니다."); await _speechToText.listen(onResult: _onSpeechResult); //setState(() {}); } /// Manually stop the active speech recognition session /// Note that there are also timeouts that each platform enforces /// and the SpeechToText plugin supports setting timeouts on the /// listen method. void _stopListening() async { // 음성 인식 중지 print("음성인식을 종료합니다."); await _speechToText.stop(); //setState(() {}); } /// This is the callback that the SpeechToText plugin calls when /// the platform returns recognized words. void _onSpeechResult(SpeechRecognitionResult result) { _lastWords = ""; //초기화 시킴 , 입력을 받을떄마다 새롭게 리셋해야하기 떄문에 추가 if(result.finalResult){ //최종인식 _lastWords = result.recognizedWords; //result에 recognizedWords를 _lastWords에 넣어줘 print("최종 인식된 문장: $_lastWords"); //flutter 에서는 변수를 텍스트 안에 넣어줄때 $를 넣고 일반 텍스트문자영하고 변수가 가티 출력됨 / 최종 인식된 음성을 텍스트로 바꿔서 _lastWords 넣어줘 setState(() { //messages 리스트에 인식한 내용을 추가해줘. messages.insert(0, ChatMessage( text: _lastWords, user: user1, createdAt: DateTime.now() )); }); Future<String> data = sendMessageToServer(_lastWords); //입력한 메세지를 받아서 서버에 전송을 해주고 data.then((value){ //결과값을 비동기(?) 형태로 받아와서 user2(chatgpt)가 발화(이야기)하고 통신 결과값을 출력하는 setState(() { messages.insert(0, ChatMessage( text: value, user: user2, createdAt: DateTime.now() )); }); flutterTts.speak(value); // value를 바로 읽어줌 }); } } }
-
미해결모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 2 - 랭체인(LangChain)으로 나만의 ChatGPT 만들기
langchain.schema가 무슨 역할을 하는지요?
랭체인으로 나만의 ChatGPT 만들기를 공부하다가 보니 아래와 같이 schema 가 나오는데 이 라이브러리는 뭐하는 건지요? 랭체인 사이트에 들어가 봐도 시원하게 설명되어 있는 것이 없어 문의 드립니다.from langchain.schema import HumanMessage
-
미해결(2024 9월 개정판) ChatGPT 활용법, 생성 AI 프롬프트 엔지니어링 A to Z - 인공지능의 이해와 활용
생성형 AI 기반 창작물 저작권 관련 질문
좋은 강의를 제공해주셔서 감사합니다. 생성형 AI 기반 창작물(이미지, 음악, 스크립트 등)은 저작권 관련 문제가 없는지 궁금합니다.예를 들어,- 픽사 이미지풍 창작 이미지 생성 => 블로그, 유튜브 등 업로드 시- Suno에서 음악 생성 => 유튜브, 클라우드 등 업로드 시감사합니다.
-
미해결모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 2 - 랭체인(LangChain)으로 나만의 ChatGPT 만들기
라마 3(Llama 3)로 AI 텍스트 번역하기 실행 오류.
안녕하세요. 강의를 듣던 중 유트뷰에서 라마 3(Llama 3)로 AI 텍스트 번역하기 - 무료로 ChatGPT보다 뛰어난 성능의 AI 번역챗봇 만들기를 듣고 따라해 보던 중 소스코드가 실행이 안되어서 문의드립니다.에러가 나는 부분은 아래입니다. llama3_translatation_text = generate_response(system_message="너는 번역을 수행하는 챗봇이야. 다음 내용을 번역해줘.", user_message=eng_text) print(llama3_translatation_text)오류 메시지는 처음에는 아래와 같았습니다.The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's attention_mask to obtain reliable results. Setting pad_token_id to eos_token_id:2 for open-end generation.' 그리고 최근에는 아래와 같습니다.ValueError: Cannot use apply_chat_template() because tokenizer.chat_template is not set and no template argument was passed! For information about writing templates and setting the tokenizer.chat_template attribute, please see the documentation at https://huggingface.co/docs/transformers/main/en/chat_templating여러 가지를 찾아 봐도 해결을 못해서 문의드립니다.그럼 수고하세요.
-
해결됨[Python 초보] Flutter로 만드는 ChatGPT 음성번역앱
음성 통신 테스트 안됨
음성 통신 테스트를 할때녹음을 못하는것 같습니다어떻게 해결해야하나요...?python test_total_mic.py 하면 밑에처럼 뜹니다.... 마이크 설정은 부록을 보고 켜져있는것을 확인했습니다,,,, 녹음을 시작합니다!녹음을 종료합니다.Error in sys.excepthook:Original exception was: 제가 친 코드 입니다from openai import OpenAI from pathlib import Path import sounddevice as sd from scipy.io.wavfile import write from playsound import playsoundclient = OpenAI() def record_audio(): #비트레이트 fs = 44100 seconds = 3 # 음성의 길이 print('녹음을 시작합니다!') record = sd.rec(int(seconds*fs), samplerate=fs, channels=2) sd.wait() #대기 print('녹음을 종료합니다.') audio_input_path = "audio_input.wav" write(audio_input_path,fs,record) return audio_input_pathdef conn_whisper(audio_input_path): audio_file= open(audio_input_path, "rb") transcription = client.audio.transcriptions.create( model="whisper-1", file=audio_file ) print(transcription.text) text_input = transcription.text return text_inputdef conn_chatgpt(text_input): completion = client.chat.completions.create( model="gpt-4o-mini", messages=[ {"role": "user","content": text_input} ] ) print(completion.choices[0].message.content) text_output = completion.choices[0].message.content return text_outputdef conn_tts(text_output): speech_file_path = Path(__file__).parent / "audio_output.mp3" response = client.audio.speech.create( model="tts-1", voice="alloy", input=text_output ) response.stream_to_file(speech_file_path) audio_output_path = str(speech_file_path) return audio_output_pathdef main(): #마이크 input => audio_intput_path audio_input_path = record_audio() audio_input = open(audio_input_path,"rb") text_input = conn_whisper(audio_input) text_output = conn_chatgpt(text_input) audio_output_path = conn_tts(text_output) playsound(audio_output_path) returnmain()
-
해결됨[Python 초보] Flutter로 만드는 ChatGPT 음성번역앱
chatgpt api 연결안되는거 같아요
섹션 3에서 chatgpt api 연결이 안되는거 같아요 python test_chatgpt.py 를 하면 선생님처럼 되지 않고 이런 오류가 뜹니다.해결 부탁드립니다...(desktop_venv) C:\desktop>python test_chatgpt.py Traceback (most recent call last): File "C:\desktop\test_chatgpt.py", line 4, in <module> completion = client.chat.completions.create( File "C:\desktop\desktop_venv\lib\site-packages\openai\_utils\_utils.py", line 274, in wrapper return func(*args, **kwargs) File "C:\desktop\desktop_venv\lib\site-packages\openai\resources\chat\completions.py", line 704, in create return self._post( File "C:\desktop\desktop_venv\lib\site-packages\openai\_base_client.py", line 1270, in post return cast(ResponseT, self.request(cast_to, opts, stream=stream, stream_cls=stream_cls)) File "C:\desktop\desktop_venv\lib\site-packages\openai\_base_client.py", line 947, in request return self._request( File "C:\desktop\desktop_venv\lib\site-packages\openai\_base_client.py", line 1051, in _request raise self._make_status_error_from_response(err.response) from Noneopenai.AuthenticationError: Error code: 401 - {'error': {'message': 'Incorrect API key provided: sk-proj-********************************************************************************************************************************************************ndYA. You can find your API key at https://platform.openai.com/account/api-keys.', 'type': 'invalid_request_error', 'param': None, 'code': 'invalid_api_key'}}
-
미해결챗GPT 비즈니스 글쓰기: 당신의 업무 비서가 되는 방법 (입문편)
자료 다운로드 방법 문의
강사님께서.."또한, 강의에서 사용한 프롬프트 가이드와 사용자 맞춤형 지침 자료를 정리하여 제공합니다.다운로드 링크는 "섹션 3"에 있습니다. 사용자 맞춤형 지침은 지속적으로 업데이트하여 배포할 예정입니다."라는 메일을 주셨는데요.섹션 3 에 가봐도 해당 자료에 대한 다운로드 링크를 잘 찾을 수가 없습니다.강의에서 사용한 프롬프트 가이드와 사용자 맞춤형 지침 자료에 대한 다운로드 방법을 좀 더 정확히 설명해 주시면 감사하겠습니다.
-
미해결달리(DALL-E): 초보자를 위한 이미지 생성 가이드 (입문편)
동일 캐릭터 생성의 어려움.
동일한 캐릭터 이미지 생성하기 쪽을 실습하고 있습니다.동일한 캐릭터로 웹툰을 만드는 것이 안되네요... 문제는 캐릭터가 너무 달라진다는 점입니다....시드번호를 따서 넣어도 마찬가지입니다.작업은 이렇게 해봤습니다.동일한 캐릭터를 못쓰는 것이 문제니깐 먼저 배경없이 캐릭터 일러스트를 만들어서 시드번호를 딴다해당 시드번호를 바탕으로 미리 만들어 놓은 4컷 웹툰 스토리보드와 결합해서 1컷의 이야기를 만들어줘라고 한다.1컷을 스토리보드에 맞게 수정한다.이제는 1컷의 시드번호를 딴다(원래 캐릭터 일러스트 시드번호를 따는 것보다 1컷의 시드번호를 따는 것이 동일한 캐릭터를 나오게 하는데 좋다고 판단했습니다.)아래와 같이 요청한다.1. "시드번호 : 2234079682"의 3명의 인물의 키, 몸무게, 얼굴생김새, 머리스타일, 옷을 그대로 유지, 배경도 유지2. 2컷 내용을 기반으로 이미지 만들어줘 2컷: 첫째의 눈물 준호는 은지의 머리 위에 작은 인형을 올리고 깔깔거리며 웃는다. 은지는 불안해하며 눈물이 고이기 시작하고, 결국 울음을 터뜨린다. 준호는 당황한 표정으로 은지를 쳐다보지만, 은지는 고개를 숙인 채 눈물을 흘린다. 배경: 아이들이 웅성거리며 상황을 지켜보는 장면. 캐릭터: 은지(눈물을 흘리며 고개를 숙이고 있음), 준호(당황한 얼굴로 뒷머리를 긁적이며 서 있음).하지만 여전히 동일캐릭터로 만드는 것이 쉽지 않습니다.... 어떻게 하면 좋을까요?
-
미해결모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 2 - 랭체인(LangChain)으로 나만의 ChatGPT 만들기
SQL 에이전트 제작 예제 프로그램과 관련하여 질문 드립니다.
db = SQLDatabase.from_uri("sqlite:///chinook.db") write_query = create_sql_query_chain(llm, db) execute_query = QuerySQLDataBaseTool(db=db) answer_prompt = PromptTemplate.from_template( """Given the following user question, corresponding SQL query, and SQL result, answer the user question. Question: {question} SQL Query: {query} SQL Result: {result} Answer: """ ) print("write_query : ", write_query) answer = answer_prompt | llm | StrOutputParser() chain = ( RunnablePassthrough.assign(query=write_query).assign( result=itemgetter("query") | execute_query ) | answer ) 이 부분에서 chain 과 관련한 동작을 좀 더 상세히 설명 부탁드릴 수 있는지요?
-
미해결모두를 위한 대규모 언어 모델 LLM Part 3 - 구글 제미나이(Google Gemini) API, OpenAI API와 젬마(Gemma)로 AI 어플리케이션 만들기
RAG_Chain.invoke 답변이 나오지 않습니다.
강의 colab 을 복사해서 해보고 있습니다. 그런데 RAG_Chain.invoke 에 대한 답변이 정상적으로 반환 되지 않습니다. 청킹도 제대로 된거 같고, "저출산을 극복한 나라들은 어디가 있어?" 라는 질문에는 답이 나오는데, "한국 저출산의 원인이 무엇이야?" 질문에는 답아 나오지 않습니다. 제가 무엇을 잘못해서 그런걸까요?
-
해결됨ChatGPT 고급 활용법 – 남들보다 100배 더 잘 쓰는 ChatGPT 비법 클래스
강의 잘 보고 있습니다.
엉뚱한 질문일수도 있겠지만, 판서하실때 사용하시는 그 이쁜 깃털펜은 어디에서 찾을수 있나요? 😁
-
해결됨2시간으로 끝내는 프론트엔드 테스트 기본기
테스트 자동화를 cypress cloud로 하는 이유
안녕하세요, 선생님. 강의를 모두 듣고 개인 프로젝트에 적용해보고 있는 중에 궁금한 점이 생겨 질문 남깁니다.이번 강의에 나온 cypress cloud를 사용해서 테스트 자동화를 해보았는데 문득 cypress가 아니라 cypress cloud를 사용해서 테스트 자동화를 하는 이유가 무엇인지 궁금하더라고요.https://docs.cypress.io/guides/continuous-integration/github-actions위 문서를 찾아보니 cypress cloud는 테스트를 병렬로 진행해서 속도가 더 빠르다고 하는데 병렬 테스트를 위해 cypress cloud를 사용하는 것인지 궁금합니다.아니면 뭔가 다른 이유가 있을까요?