>Java >java지도 시간 >오픈 소스와의 첫 번째 상호 작용

오픈 소스와의 첫 번째 상호 작용

DDD
DDD원래의
2024-09-19 03:02:44719검색

소개

내 손이 닿을 수 없는 것처럼 들리기 때문에 내 손이 오픈 소스를 만질 것이라고는 결코 생각하지 못했습니다. 그러나 이번 학기부터 나는 무엇이 나를 기다리고 있는지 알지 못한 채 David Humphrey의 "오픈 소스 개발"이라는 과정을 선택했고 "내 프로그램을 수행하는 또 다른 지루한 과정"과 같은 기대가 있었지만 시작하고 나니 깨달았습니다. 다른 강좌와는 뭔가 다른 것 같아요. 첫 번째 강의에서 우리는 유용한 방식으로 파일을 변환하기 위해 호환 가능한 AI API 엔드포인트를 사용할 수 있는 간단한 CLI 도구를 구축하는 임무를 받았습니다. 아마도 그것이 내 인생을 바꾸었을 것입니다. 말 그대로 저는 프로그래밍에 그렇게 열정을 쏟은 적이 없었고 제가 이 분야에 속하지 않는다고 생각했습니다. 하지만 우리 모두는 길이 항상 직선이 아니며 때로는 좁다는 것을 알고 있습니다. 나는 우리 반에서 아주 능숙한 많은 학생들을 목격했고, 코딩에 대한 내 사랑을 되살린 유일한 생각은 "내가 그들보다 더 나쁜가? 아니... 그게 나를 너무 힘들게 해서 3주째에 쉬지 않고 앉아 있는 것"이었습니다. 완전히 새로운 언어를 선택하고 연구와 테스트를 시작하면서 말 그대로 내가 원하는 것은 무엇이든 만들 수 있다는 것을 이해하는 데 도움이 되는 간단하면서도 흥미로운 결과를 얻었습니다.

다중 언어 코드

PolyglotCode는 개발자가 다른 프로그래밍 언어의 코드로 파일을 번역하는 데 도움이 되는 명령줄 도구입니다. 이 도구는 Maven 종속성 관리자를 사용하여 Java로 작성되었습니다. 단순히 파일을 가져와서 사용자가 번역하려는 언어를 API 엔드포인트에 쿼리로 보내고 번역된 자료를 터미널에 출력하거나 파일에 씁니다(사용자 선택). 앞으로는 Cohere의 AI v1을 사용했다는 점을 언급하고 싶습니다. 끝점.

First Interaction With Open Source

도구의 자세한 데모 영상을 올렸습니다.

시작하기

1단계. Cohere API 키를 생성하여 메인 클래스 내부의 -a && --api-key 플래그의 defaultValue에 제공합니다.

@Option(
        names = {"-a", "--api-key"},
        defaultValue = "YOUR_API-KEY",
        description = "Modifying api key manually"
)
private String api;

또는

플래그를 사용하여 호출을 지정하고 명령줄에 API 키를 제공합니다(3단계 이후에만 사용 가능).

./polyglot <file(s)...> <language> -a <YOUR-API-KEY>

2단계. bash 스크립트를 실행 가능하게 만들어 사용자가 ./polyglot 명령을 사용하여 코드를 실행할 수 있도록 합니다

chmod +x polyglot

3단계. Maven 패키지를 실행하여 소스 코드 컴파일

mvn package

특징

이유는 릴리스 v0.1이기 때문에 이 도구를 만드는 데 애를 먹었습니다(고군분투했지만 시간이 많이 걸렸다는 뜻입니다. 즐거웠어요 :D) 구현하려고 계획한 기능이 모두 포함되어 있지 않습니다. . 그러나 여전히 필수 기능 중 일부가 포함되어 있으므로 단순히 요구 사항을 따랐을 뿐입니다. 여기 있습니다:

돕다

프로그래밍의 정점이 아닌가, (-h, --help) 플래그. 이 플래그는 사용자가 사용법과 모든 플래그를 배우는 데 도움이 됩니다. 사용법:

./polyglot -h

또는

./polyglot --help

First Interaction With Open Source

버전

프로그래밍의 또 다른 정점은 (-v, --version) 플래그입니다. 도구의 현재 버전을 표시합니다. 사용법:

./polyglot -v

또는

./polyglot --version

First Interaction With Open Source

API 키

앞서 언급했듯이 사용자는 코드에 들어가지 않고 단순히 플래그(-a, --api-key)를 사용하여 Cohere-Api 키를 지정할 수 있습니다. 사용법:

./polyglot <file(s)...> <language> -a <YOUR-API>

또는

./polyglot <file(s)...> <language> --api-key <YOUR-API>

기본 URL

예기치 않은 출력이 발생할 수 있으므로 이 애플리케이션의 baseUrl을 변경하지 않는 것이 좋습니다. 그러나 이 옵션은 사용자가 계속 사용할 수 있습니다. 사용법:

./polyglot <file(s)...> <language> -u <baseUrl>

또는

./polyglot <file(s)...> <language> --base-url <baseURL>

First Interaction With Open Source

산출

사용자가 지정한 파일을 생성하고 거기에 결과를 씁니다. 한 번에 하나의 파일에 이 옵션을 사용하는 것이 좋습니다. 사용법:

./polyglot <file(s)...> <language> -o file.txt

또는

./polyglot <file(s)...> <language> --output file.txt

First Interaction With Open Source

새 파일의 모습:

First Interaction With Open Source

내가 직면한 과제

제가 가진 모든 특징을 여러분과 공유한 후에는 제가 직면했던 어려움에 대해 이야기할 시간입니다. 어려운 점 중 하나는 새로운 언어를 배우는 것이었습니다. C/C 이전에 배운 것만큼 어렵지는 않았습니다. 두 번째는 간단한 질문에도 답하기 위해 개발된 것이 아니기 때문에 적절한 AI 엔드포인트를 찾는 것이었고, 제 목표는 그것을 무료로 찾는 것이었습니다 :) 세 번째 과제는 설정에 도움이 되는 도구인 picoCLI의 사용법을 배우는 것이었습니다. CLI 도구, 처음에는 도움이 되도록 bash 스크립트를 만들었고 picoCLI를 사용하지 않으려고 하다가 너무 불편해져서 picoCLI에 대해 더 잘 배우기로 결정했습니다.

전반적으로 이 프로젝트는 열심히 노력하면 모든 것이 가능하다는 것을 이해하는 데 도움이 되었습니다!

위 내용은 오픈 소스와의 첫 번째 상호 작용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.